nautobot_openapi/models/
software_version_request.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct SoftwareVersionRequest {
15 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
16 pub id: Option<uuid::Uuid>,
17 #[serde(rename = "version")]
18 pub version: String,
19 #[serde(rename = "alias", skip_serializing_if = "Option::is_none")]
21 pub alias: Option<String>,
22 #[serde(
23 rename = "release_date",
24 default,
25 with = "::serde_with::rust::double_option",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub release_date: Option<Option<String>>,
29 #[serde(
30 rename = "end_of_support_date",
31 default,
32 with = "::serde_with::rust::double_option",
33 skip_serializing_if = "Option::is_none"
34 )]
35 pub end_of_support_date: Option<Option<String>>,
36 #[serde(rename = "documentation_url", skip_serializing_if = "Option::is_none")]
37 pub documentation_url: Option<String>,
38 #[serde(rename = "long_term_support", skip_serializing_if = "Option::is_none")]
40 pub long_term_support: Option<bool>,
41 #[serde(rename = "pre_release", skip_serializing_if = "Option::is_none")]
43 pub pre_release: Option<bool>,
44 #[serde(rename = "platform")]
45 pub platform: Box<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>,
46 #[serde(rename = "status")]
47 pub status: Box<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>,
48 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
49 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
50 #[serde(rename = "relationships", skip_serializing_if = "Option::is_none")]
51 pub relationships: Option<
52 ::std::collections::HashMap<
53 String,
54 crate::models::ApprovalWorkflowDefinitionRequestRelationshipsValue,
55 >,
56 >,
57 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
58 pub tags: Option<Vec<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>>,
59}
60
61impl SoftwareVersionRequest {
62 pub fn new(
64 version: String,
65 platform: crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage,
66 status: crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage,
67 ) -> SoftwareVersionRequest {
68 SoftwareVersionRequest {
69 id: None,
70 version,
71 alias: None,
72 release_date: None,
73 end_of_support_date: None,
74 documentation_url: None,
75 long_term_support: None,
76 pre_release: None,
77 platform: Box::new(platform),
78 status: Box::new(status),
79 custom_fields: None,
80 relationships: None,
81 tags: None,
82 }
83 }
84}