Skip to main content

gitbundle_sdk/models/
pullreq_model.rs

1/*
2 * GitBundle API
3 *
4 * GitBundle API documentation.
5 *
6 * The version of the OpenAPI document: 3.4.1
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(
64        rename = "merge_conflicts",
65        default,
66        with = "::serde_with::rust::double_option",
67        skip_serializing_if = "Option::is_none"
68    )]
69    pub merge_conflicts: Option<Option<Vec<String>>>,
70    #[serde(
71        rename = "merge_method",
72        default,
73        with = "::serde_with::rust::double_option",
74        skip_serializing_if = "Option::is_none"
75    )]
76    pub merge_method: Option<Option<models::PullreqMergeMethod>>,
77    #[serde(
78        rename = "merge_sha",
79        default,
80        with = "::serde_with::rust::double_option",
81        skip_serializing_if = "Option::is_none"
82    )]
83    pub merge_sha: Option<Option<String>>,
84    #[serde(
85        rename = "merge_target_sha",
86        default,
87        with = "::serde_with::rust::double_option",
88        skip_serializing_if = "Option::is_none"
89    )]
90    pub merge_target_sha: Option<Option<String>>,
91    #[serde(
92        rename = "merged",
93        default,
94        with = "::serde_with::rust::double_option",
95        skip_serializing_if = "Option::is_none"
96    )]
97    pub merged: Option<Option<i64>>,
98    #[serde(
99        rename = "merged_by",
100        default,
101        with = "::serde_with::rust::double_option",
102        skip_serializing_if = "Option::is_none"
103    )]
104    pub merged_by: Option<Option<i64>>,
105    #[serde(rename = "number")]
106    pub number: i64,
107    #[serde(rename = "source_branch")]
108    pub source_branch: String,
109    #[serde(rename = "source_repo_id")]
110    pub source_repo_id: i64,
111    #[serde(rename = "source_sha")]
112    pub source_sha: String,
113    #[serde(rename = "state")]
114    pub state: models::PullreqState,
115    #[serde(rename = "target_branch")]
116    pub target_branch: String,
117    #[serde(rename = "target_repo_id")]
118    pub target_repo_id: i64,
119    #[serde(rename = "title")]
120    pub title: String,
121    #[serde(rename = "unresolved_count")]
122    pub unresolved_count: i64,
123    #[serde(rename = "updated")]
124    pub updated: i64,
125    #[serde(rename = "version")]
126    pub version: i64,
127}
128
129impl PullreqModel {
130    pub fn new(
131        comment_count: i64,
132        created: i64,
133        created_by: i64,
134        description: String,
135        edited: i64,
136        id: i64,
137        is_draft: bool,
138        merge_base_sha: String,
139        merge_check_status: models::PullreqMergeCheckStatus,
140        number: i64,
141        source_branch: String,
142        source_repo_id: i64,
143        source_sha: String,
144        state: models::PullreqState,
145        target_branch: String,
146        target_repo_id: i64,
147        title: String,
148        unresolved_count: i64,
149        updated: i64,
150        version: i64,
151    ) -> PullreqModel {
152        PullreqModel {
153            activity_seq: None,
154            closed: None,
155            comment_count,
156            commit_count: None,
157            created,
158            created_by,
159            description,
160            edited,
161            file_count: None,
162            id,
163            is_draft,
164            merge_base_sha,
165            merge_check_status,
166            merge_conflicts: None,
167            merge_method: None,
168            merge_sha: None,
169            merge_target_sha: None,
170            merged: None,
171            merged_by: None,
172            number,
173            source_branch,
174            source_repo_id,
175            source_sha,
176            state,
177            target_branch,
178            target_repo_id,
179            title,
180            unresolved_count,
181            updated,
182            version,
183        }
184    }
185}