nautobot_openapi/models/
service.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct Service {
15 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
16 pub id: Option<uuid::Uuid>,
17 #[serde(rename = "object_type", skip_serializing_if = "Option::is_none")]
18 pub object_type: Option<String>,
19 #[serde(rename = "display", skip_serializing_if = "Option::is_none")]
21 pub display: Option<String>,
22 #[serde(rename = "url", skip_serializing_if = "Option::is_none")]
23 pub url: Option<String>,
24 #[serde(rename = "natural_slug", skip_serializing_if = "Option::is_none")]
25 pub natural_slug: Option<String>,
26 #[serde(rename = "protocol", skip_serializing_if = "Option::is_none")]
27 pub protocol: Option<Box<crate::models::ServiceProtocol>>,
28 #[serde(rename = "ports")]
29 pub ports: Vec<i32>,
30 #[serde(rename = "name")]
31 pub name: String,
32 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
33 pub description: Option<String>,
34 #[serde(
35 rename = "device",
36 default,
37 with = "::serde_with::rust::double_option",
38 skip_serializing_if = "Option::is_none"
39 )]
40 pub device: Option<Option<Box<crate::models::BulkWritableServiceRequestDevice>>>,
41 #[serde(
42 rename = "virtual_machine",
43 default,
44 with = "::serde_with::rust::double_option",
45 skip_serializing_if = "Option::is_none"
46 )]
47 pub virtual_machine:
48 Option<Option<Box<crate::models::BulkWritableServiceRequestVirtualMachine>>>,
49 #[serde(
50 rename = "created",
51 default,
52 with = "::serde_with::rust::double_option",
53 skip_serializing_if = "Option::is_none"
54 )]
55 pub created: Option<Option<String>>,
56 #[serde(
57 rename = "last_updated",
58 default,
59 with = "::serde_with::rust::double_option",
60 skip_serializing_if = "Option::is_none"
61 )]
62 pub last_updated: Option<Option<String>>,
63 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
64 pub tags: Option<Vec<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>>,
65 #[serde(rename = "notes_url", skip_serializing_if = "Option::is_none")]
66 pub notes_url: Option<String>,
67 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
68 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
69}
70
71impl Service {
72 pub fn new(ports: Vec<i32>, name: String) -> Service {
74 Service {
75 id: None,
76 object_type: None,
77 display: None,
78 url: None,
79 natural_slug: None,
80 protocol: None,
81 ports,
82 name,
83 description: None,
84 device: None,
85 virtual_machine: None,
86 created: None,
87 last_updated: None,
88 tags: None,
89 notes_url: None,
90 custom_fields: None,
91 }
92 }
93}