gitbundle_sdk/models/
pullreq_model.rs

1/*
2 * GitBundle API
3 *
4 * GitBundle API documentation.
5 *
6 * The version of the OpenAPI document: 3.2.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct PullreqModel {
17    #[serde(
18        rename = "activity_seq",
19        default,
20        with = "::serde_with::rust::double_option",
21        skip_serializing_if = "Option::is_none"
22    )]
23    pub activity_seq: Option<Option<i64>>,
24    #[serde(
25        rename = "closed",
26        default,
27        with = "::serde_with::rust::double_option",
28        skip_serializing_if = "Option::is_none"
29    )]
30    pub closed: Option<Option<i64>>,
31    #[serde(rename = "comment_count")]
32    pub comment_count: i64,
33    #[serde(
34        rename = "commit_count",
35        default,
36        with = "::serde_with::rust::double_option",
37        skip_serializing_if = "Option::is_none"
38    )]
39    pub commit_count: Option<Option<i64>>,
40    #[serde(rename = "created")]
41    pub created: i64,
42    #[serde(rename = "created_by")]
43    pub created_by: i64,
44    #[serde(rename = "description")]
45    pub description: String,
46    #[serde(rename = "edited")]
47    pub edited: i64,
48    #[serde(
49        rename = "file_count",
50        default,
51        with = "::serde_with::rust::double_option",
52        skip_serializing_if = "Option::is_none"
53    )]
54    pub file_count: Option<Option<i64>>,
55    #[serde(rename = "id")]
56    pub id: i64,
57    #[serde(rename = "is_draft")]
58    pub is_draft: bool,
59    #[serde(rename = "merge_base_sha")]
60    pub merge_base_sha: String,
61    #[serde(rename = "merge_check_status")]
62    pub merge_check_status: models::PullreqMergeCheckStatus,
63    #[serde(rename = "merge_conflicts", skip_serializing_if = "Option::is_none")]
64    pub merge_conflicts: Option<Vec<String>>,
65    #[serde(
66        rename = "merge_method",
67        default,
68        with = "::serde_with::rust::double_option",
69        skip_serializing_if = "Option::is_none"
70    )]
71    pub merge_method: Option<Option<models::PullreqMergeMethod>>,
72    #[serde(
73        rename = "merge_sha",
74        default,
75        with = "::serde_with::rust::double_option",
76        skip_serializing_if = "Option::is_none"
77    )]
78    pub merge_sha: Option<Option<String>>,
79    #[serde(
80        rename = "merge_target_sha",
81        default,
82        with = "::serde_with::rust::double_option",
83        skip_serializing_if = "Option::is_none"
84    )]
85    pub merge_target_sha: Option<Option<String>>,
86    #[serde(
87        rename = "merged",
88        default,
89        with = "::serde_with::rust::double_option",
90        skip_serializing_if = "Option::is_none"
91    )]
92    pub merged: Option<Option<i64>>,
93    #[serde(
94        rename = "merged_by",
95        default,
96        with = "::serde_with::rust::double_option",
97        skip_serializing_if = "Option::is_none"
98    )]
99    pub merged_by: Option<Option<i64>>,
100    #[serde(rename = "number")]
101    pub number: i64,
102    #[serde(rename = "source_branch")]
103    pub source_branch: String,
104    #[serde(rename = "source_repo_id")]
105    pub source_repo_id: i64,
106    #[serde(rename = "source_sha")]
107    pub source_sha: String,
108    #[serde(rename = "state")]
109    pub state: models::PullreqState,
110    #[serde(rename = "target_branch")]
111    pub target_branch: String,
112    #[serde(rename = "target_repo_id")]
113    pub target_repo_id: i64,
114    #[serde(rename = "title")]
115    pub title: String,
116    #[serde(rename = "unresolved_count")]
117    pub unresolved_count: i64,
118    #[serde(rename = "updated")]
119    pub updated: i64,
120    #[serde(rename = "version")]
121    pub version: i64,
122}
123
124impl PullreqModel {
125    pub fn new(
126        comment_count: i64,
127        created: i64,
128        created_by: i64,
129        description: String,
130        edited: i64,
131        id: i64,
132        is_draft: bool,
133        merge_base_sha: String,
134        merge_check_status: models::PullreqMergeCheckStatus,
135        number: i64,
136        source_branch: String,
137        source_repo_id: i64,
138        source_sha: String,
139        state: models::PullreqState,
140        target_branch: String,
141        target_repo_id: i64,
142        title: String,
143        unresolved_count: i64,
144        updated: i64,
145        version: i64,
146    ) -> PullreqModel {
147        PullreqModel {
148            activity_seq: None,
149            closed: None,
150            comment_count,
151            commit_count: None,
152            created,
153            created_by,
154            description,
155            edited,
156            file_count: None,
157            id,
158            is_draft,
159            merge_base_sha,
160            merge_check_status,
161            merge_conflicts: None,
162            merge_method: None,
163            merge_sha: None,
164            merge_target_sha: None,
165            merged: None,
166            merged_by: None,
167            number,
168            source_branch,
169            source_repo_id,
170            source_sha,
171            state,
172            target_branch,
173            target_repo_id,
174            title,
175            unresolved_count,
176            updated,
177            version,
178        }
179    }
180}