openapi_github/models/
import.rs

1/*
2 * GitHub's official OpenAPI spec + Octokit extension
3 *
4 * OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
5 *
6 * The version of the OpenAPI document: 16.6.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// Import : A repository import from an external source.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct Import {
17    #[serde(rename = "vcs", deserialize_with = "Option::deserialize")]
18    pub vcs: Option<String>,
19    #[serde(rename = "use_lfs", skip_serializing_if = "Option::is_none")]
20    pub use_lfs: Option<bool>,
21    /// The URL of the originating repository.
22    #[serde(rename = "vcs_url")]
23    pub vcs_url: String,
24    #[serde(rename = "svc_root", skip_serializing_if = "Option::is_none")]
25    pub svc_root: Option<String>,
26    #[serde(rename = "tfvc_project", skip_serializing_if = "Option::is_none")]
27    pub tfvc_project: Option<String>,
28    #[serde(rename = "status")]
29    pub status: Status,
30    #[serde(rename = "status_text", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
31    pub status_text: Option<Option<String>>,
32    #[serde(rename = "failed_step", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
33    pub failed_step: Option<Option<String>>,
34    #[serde(rename = "error_message", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35    pub error_message: Option<Option<String>>,
36    #[serde(rename = "import_percent", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
37    pub import_percent: Option<Option<i32>>,
38    #[serde(rename = "commit_count", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
39    pub commit_count: Option<Option<i32>>,
40    #[serde(rename = "push_percent", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
41    pub push_percent: Option<Option<i32>>,
42    #[serde(rename = "has_large_files", skip_serializing_if = "Option::is_none")]
43    pub has_large_files: Option<bool>,
44    #[serde(rename = "large_files_size", skip_serializing_if = "Option::is_none")]
45    pub large_files_size: Option<i32>,
46    #[serde(rename = "large_files_count", skip_serializing_if = "Option::is_none")]
47    pub large_files_count: Option<i32>,
48    #[serde(rename = "project_choices", skip_serializing_if = "Option::is_none")]
49    pub project_choices: Option<Vec<models::ImportProjectChoicesInner>>,
50    #[serde(rename = "message", skip_serializing_if = "Option::is_none")]
51    pub message: Option<String>,
52    #[serde(rename = "authors_count", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
53    pub authors_count: Option<Option<i32>>,
54    #[serde(rename = "url")]
55    pub url: String,
56    #[serde(rename = "html_url")]
57    pub html_url: String,
58    #[serde(rename = "authors_url")]
59    pub authors_url: String,
60    #[serde(rename = "repository_url")]
61    pub repository_url: String,
62    #[serde(rename = "svn_root", skip_serializing_if = "Option::is_none")]
63    pub svn_root: Option<String>,
64}
65
66impl Import {
67    /// A repository import from an external source.
68    pub fn new(vcs: Option<String>, vcs_url: String, status: Status, url: String, html_url: String, authors_url: String, repository_url: String) -> Import {
69        Import {
70            vcs,
71            use_lfs: None,
72            vcs_url,
73            svc_root: None,
74            tfvc_project: None,
75            status,
76            status_text: None,
77            failed_step: None,
78            error_message: None,
79            import_percent: None,
80            commit_count: None,
81            push_percent: None,
82            has_large_files: None,
83            large_files_size: None,
84            large_files_count: None,
85            project_choices: None,
86            message: None,
87            authors_count: None,
88            url,
89            html_url,
90            authors_url,
91            repository_url,
92            svn_root: None,
93        }
94    }
95}
96/// 
97#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
98pub enum Status {
99    #[serde(rename = "auth")]
100    Auth,
101    #[serde(rename = "error")]
102    Error,
103    #[serde(rename = "none")]
104    None,
105    #[serde(rename = "detecting")]
106    Detecting,
107    #[serde(rename = "choose")]
108    Choose,
109    #[serde(rename = "auth_failed")]
110    AuthFailed,
111    #[serde(rename = "importing")]
112    Importing,
113    #[serde(rename = "mapping")]
114    Mapping,
115    #[serde(rename = "waiting_to_push")]
116    WaitingToPush,
117    #[serde(rename = "pushing")]
118    Pushing,
119    #[serde(rename = "complete")]
120    Complete,
121    #[serde(rename = "setup")]
122    Setup,
123    #[serde(rename = "unknown")]
124    Unknown,
125    #[serde(rename = "detection_found_multiple")]
126    DetectionFoundMultiple,
127    #[serde(rename = "detection_found_nothing")]
128    DetectionFoundNothing,
129    #[serde(rename = "detection_needs_auth")]
130    DetectionNeedsAuth,
131}
132
133impl Default for Status {
134    fn default() -> Status {
135        Self::Auth
136    }
137}
138