Skip to main content

gitea_client/models/
repository.rs

1/*
2 * Gitea API
3 *
4 * This documentation describes the Gitea API.
5 *
6 * The version of the OpenAPI document: 1.25.2
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// Repository : Repository represents a repository
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Repository {
17    #[serde(rename = "allow_fast_forward_only_merge", skip_serializing_if = "Option::is_none")]
18    pub allow_fast_forward_only_merge: Option<bool>,
19    #[serde(rename = "allow_manual_merge", skip_serializing_if = "Option::is_none")]
20    pub allow_manual_merge: Option<bool>,
21    #[serde(rename = "allow_merge_commits", skip_serializing_if = "Option::is_none")]
22    pub allow_merge_commits: Option<bool>,
23    #[serde(rename = "allow_rebase", skip_serializing_if = "Option::is_none")]
24    pub allow_rebase: Option<bool>,
25    #[serde(rename = "allow_rebase_explicit", skip_serializing_if = "Option::is_none")]
26    pub allow_rebase_explicit: Option<bool>,
27    #[serde(rename = "allow_rebase_update", skip_serializing_if = "Option::is_none")]
28    pub allow_rebase_update: Option<bool>,
29    #[serde(rename = "allow_squash_merge", skip_serializing_if = "Option::is_none")]
30    pub allow_squash_merge: Option<bool>,
31    #[serde(rename = "archived", skip_serializing_if = "Option::is_none")]
32    pub archived: Option<bool>,
33    #[serde(rename = "archived_at", skip_serializing_if = "Option::is_none")]
34    pub archived_at: Option<String>,
35    #[serde(rename = "autodetect_manual_merge", skip_serializing_if = "Option::is_none")]
36    pub autodetect_manual_merge: Option<bool>,
37    #[serde(rename = "avatar_url", skip_serializing_if = "Option::is_none")]
38    pub avatar_url: Option<String>,
39    #[serde(rename = "clone_url", skip_serializing_if = "Option::is_none")]
40    pub clone_url: Option<String>,
41    #[serde(rename = "created_at", skip_serializing_if = "Option::is_none")]
42    pub created_at: Option<String>,
43    #[serde(rename = "default_allow_maintainer_edit", skip_serializing_if = "Option::is_none")]
44    pub default_allow_maintainer_edit: Option<bool>,
45    #[serde(rename = "default_branch", skip_serializing_if = "Option::is_none")]
46    pub default_branch: Option<String>,
47    #[serde(rename = "default_delete_branch_after_merge", skip_serializing_if = "Option::is_none")]
48    pub default_delete_branch_after_merge: Option<bool>,
49    #[serde(rename = "default_merge_style", skip_serializing_if = "Option::is_none")]
50    pub default_merge_style: Option<String>,
51    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
52    pub description: Option<String>,
53    #[serde(rename = "empty", skip_serializing_if = "Option::is_none")]
54    pub empty: Option<bool>,
55    #[serde(rename = "external_tracker", skip_serializing_if = "Option::is_none")]
56    pub external_tracker: Option<Box<models::ExternalTracker>>,
57    #[serde(rename = "external_wiki", skip_serializing_if = "Option::is_none")]
58    pub external_wiki: Option<Box<models::ExternalWiki>>,
59    #[serde(rename = "fork", skip_serializing_if = "Option::is_none")]
60    pub fork: Option<bool>,
61    #[serde(rename = "forks_count", skip_serializing_if = "Option::is_none")]
62    pub forks_count: Option<i64>,
63    #[serde(rename = "full_name", skip_serializing_if = "Option::is_none")]
64    pub full_name: Option<String>,
65    #[serde(rename = "has_actions", skip_serializing_if = "Option::is_none")]
66    pub has_actions: Option<bool>,
67    #[serde(rename = "has_code", skip_serializing_if = "Option::is_none")]
68    pub has_code: Option<bool>,
69    #[serde(rename = "has_issues", skip_serializing_if = "Option::is_none")]
70    pub has_issues: Option<bool>,
71    #[serde(rename = "has_packages", skip_serializing_if = "Option::is_none")]
72    pub has_packages: Option<bool>,
73    #[serde(rename = "has_projects", skip_serializing_if = "Option::is_none")]
74    pub has_projects: Option<bool>,
75    #[serde(rename = "has_pull_requests", skip_serializing_if = "Option::is_none")]
76    pub has_pull_requests: Option<bool>,
77    #[serde(rename = "has_releases", skip_serializing_if = "Option::is_none")]
78    pub has_releases: Option<bool>,
79    #[serde(rename = "has_wiki", skip_serializing_if = "Option::is_none")]
80    pub has_wiki: Option<bool>,
81    #[serde(rename = "html_url", skip_serializing_if = "Option::is_none")]
82    pub html_url: Option<String>,
83    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
84    pub id: Option<i64>,
85    #[serde(rename = "ignore_whitespace_conflicts", skip_serializing_if = "Option::is_none")]
86    pub ignore_whitespace_conflicts: Option<bool>,
87    #[serde(rename = "internal", skip_serializing_if = "Option::is_none")]
88    pub internal: Option<bool>,
89    #[serde(rename = "internal_tracker", skip_serializing_if = "Option::is_none")]
90    pub internal_tracker: Option<Box<models::InternalTracker>>,
91    #[serde(rename = "language", skip_serializing_if = "Option::is_none")]
92    pub language: Option<String>,
93    #[serde(rename = "languages_url", skip_serializing_if = "Option::is_none")]
94    pub languages_url: Option<String>,
95    #[serde(rename = "licenses", skip_serializing_if = "Option::is_none")]
96    pub licenses: Option<Vec<String>>,
97    #[serde(rename = "link", skip_serializing_if = "Option::is_none")]
98    pub link: Option<String>,
99    #[serde(rename = "mirror", skip_serializing_if = "Option::is_none")]
100    pub mirror: Option<bool>,
101    #[serde(rename = "mirror_interval", skip_serializing_if = "Option::is_none")]
102    pub mirror_interval: Option<String>,
103    #[serde(rename = "mirror_updated", skip_serializing_if = "Option::is_none")]
104    pub mirror_updated: Option<String>,
105    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
106    pub name: Option<String>,
107    /// ObjectFormatName of the underlying git repository
108    #[serde(rename = "object_format_name", skip_serializing_if = "Option::is_none")]
109    pub object_format_name: Option<ObjectFormatName>,
110    #[serde(rename = "open_issues_count", skip_serializing_if = "Option::is_none")]
111    pub open_issues_count: Option<i64>,
112    #[serde(rename = "open_pr_counter", skip_serializing_if = "Option::is_none")]
113    pub open_pr_counter: Option<i64>,
114    #[serde(rename = "original_url", skip_serializing_if = "Option::is_none")]
115    pub original_url: Option<String>,
116    #[serde(rename = "owner", skip_serializing_if = "Option::is_none")]
117    pub owner: Option<Box<models::User>>,
118    #[serde(rename = "parent", skip_serializing_if = "Option::is_none")]
119    pub parent: Option<Box<models::Repository>>,
120    #[serde(rename = "permissions", skip_serializing_if = "Option::is_none")]
121    pub permissions: Option<Box<models::Permission>>,
122    #[serde(rename = "private", skip_serializing_if = "Option::is_none")]
123    pub private: Option<bool>,
124    #[serde(rename = "projects_mode", skip_serializing_if = "Option::is_none")]
125    pub projects_mode: Option<String>,
126    #[serde(rename = "release_counter", skip_serializing_if = "Option::is_none")]
127    pub release_counter: Option<i64>,
128    #[serde(rename = "repo_transfer", skip_serializing_if = "Option::is_none")]
129    pub repo_transfer: Option<Box<models::RepoTransfer>>,
130    #[serde(rename = "size", skip_serializing_if = "Option::is_none")]
131    pub size: Option<i64>,
132    #[serde(rename = "ssh_url", skip_serializing_if = "Option::is_none")]
133    pub ssh_url: Option<String>,
134    #[serde(rename = "stars_count", skip_serializing_if = "Option::is_none")]
135    pub stars_count: Option<i64>,
136    #[serde(rename = "template", skip_serializing_if = "Option::is_none")]
137    pub template: Option<bool>,
138    #[serde(rename = "topics", skip_serializing_if = "Option::is_none")]
139    pub topics: Option<Vec<String>>,
140    #[serde(rename = "updated_at", skip_serializing_if = "Option::is_none")]
141    pub updated_at: Option<String>,
142    #[serde(rename = "url", skip_serializing_if = "Option::is_none")]
143    pub url: Option<String>,
144    #[serde(rename = "watchers_count", skip_serializing_if = "Option::is_none")]
145    pub watchers_count: Option<i64>,
146    #[serde(rename = "website", skip_serializing_if = "Option::is_none")]
147    pub website: Option<String>,
148}
149
150impl Repository {
151    /// Repository represents a repository
152    pub fn new() -> Repository {
153        Repository {
154            allow_fast_forward_only_merge: None,
155            allow_manual_merge: None,
156            allow_merge_commits: None,
157            allow_rebase: None,
158            allow_rebase_explicit: None,
159            allow_rebase_update: None,
160            allow_squash_merge: None,
161            archived: None,
162            archived_at: None,
163            autodetect_manual_merge: None,
164            avatar_url: None,
165            clone_url: None,
166            created_at: None,
167            default_allow_maintainer_edit: None,
168            default_branch: None,
169            default_delete_branch_after_merge: None,
170            default_merge_style: None,
171            description: None,
172            empty: None,
173            external_tracker: None,
174            external_wiki: None,
175            fork: None,
176            forks_count: None,
177            full_name: None,
178            has_actions: None,
179            has_code: None,
180            has_issues: None,
181            has_packages: None,
182            has_projects: None,
183            has_pull_requests: None,
184            has_releases: None,
185            has_wiki: None,
186            html_url: None,
187            id: None,
188            ignore_whitespace_conflicts: None,
189            internal: None,
190            internal_tracker: None,
191            language: None,
192            languages_url: None,
193            licenses: None,
194            link: None,
195            mirror: None,
196            mirror_interval: None,
197            mirror_updated: None,
198            name: None,
199            object_format_name: None,
200            open_issues_count: None,
201            open_pr_counter: None,
202            original_url: None,
203            owner: None,
204            parent: None,
205            permissions: None,
206            private: None,
207            projects_mode: None,
208            release_counter: None,
209            repo_transfer: None,
210            size: None,
211            ssh_url: None,
212            stars_count: None,
213            template: None,
214            topics: None,
215            updated_at: None,
216            url: None,
217            watchers_count: None,
218            website: None,
219        }
220    }
221}
222/// ObjectFormatName of the underlying git repository
223#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
224pub enum ObjectFormatName {
225    #[serde(rename = "sha1")]
226    Sha1,
227    #[serde(rename = "sha256")]
228    Sha256,
229}
230
231impl Default for ObjectFormatName {
232    fn default() -> ObjectFormatName {
233        Self::Sha1
234    }
235}
236