1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct WritableConsoleServerPortRequest {
15 #[serde(rename = "device")]
16 pub device: Box<crate::models::BriefInterfaceRequestDevice>,
17 #[serde(
18 rename = "module",
19 default,
20 with = "::serde_with::rust::double_option",
21 skip_serializing_if = "Option::is_none"
22 )]
23 pub module: Option<Option<Box<crate::models::ConsolePortRequestModule>>>,
24 #[serde(rename = "name")]
25 pub name: String,
26 #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
28 pub label: Option<String>,
29 #[serde(
31 rename = "type",
32 default,
33 with = "::serde_with::rust::double_option",
34 skip_serializing_if = "Option::is_none"
35 )]
36 pub r#type: Option<Option<RHashType>>,
37 #[serde(
39 rename = "speed",
40 default,
41 with = "::serde_with::rust::double_option",
42 skip_serializing_if = "Option::is_none"
43 )]
44 pub speed: Option<Option<Speed>>,
45 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
46 pub description: Option<String>,
47 #[serde(rename = "mark_connected", skip_serializing_if = "Option::is_none")]
49 pub mark_connected: Option<bool>,
50 #[serde(
51 rename = "owner",
52 default,
53 with = "::serde_with::rust::double_option",
54 skip_serializing_if = "Option::is_none"
55 )]
56 pub owner: Option<Option<Box<crate::models::AsnRangeRequestOwner>>>,
57 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
58 pub tags: Option<Vec<crate::models::NestedTagRequest>>,
59 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
60 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
61}
62
63impl WritableConsoleServerPortRequest {
64 pub fn new(
66 device: crate::models::BriefInterfaceRequestDevice,
67 name: String,
68 ) -> WritableConsoleServerPortRequest {
69 WritableConsoleServerPortRequest {
70 device: Box::new(device),
71 module: None,
72 name,
73 label: None,
74 r#type: None,
75 speed: None,
76 description: None,
77 mark_connected: None,
78 owner: None,
79 tags: None,
80 custom_fields: None,
81 }
82 }
83}
84
85#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
87pub enum RHashType {
88 #[serde(rename = "de-9")]
89 De9,
90 #[serde(rename = "db-25")]
91 Db25,
92 #[serde(rename = "rj-11")]
93 Rj11,
94 #[serde(rename = "rj-12")]
95 Rj12,
96 #[serde(rename = "rj-45")]
97 Rj45,
98 #[serde(rename = "mini-din-8")]
99 MiniDin8,
100 #[serde(rename = "usb-a")]
101 UsbA,
102 #[serde(rename = "usb-b")]
103 UsbB,
104 #[serde(rename = "usb-c")]
105 UsbC,
106 #[serde(rename = "usb-mini-a")]
107 UsbMiniA,
108 #[serde(rename = "usb-mini-b")]
109 UsbMiniB,
110 #[serde(rename = "usb-micro-a")]
111 UsbMicroA,
112 #[serde(rename = "usb-micro-b")]
113 UsbMicroB,
114 #[serde(rename = "usb-micro-ab")]
115 UsbMicroAb,
116 #[serde(rename = "other")]
117 Other,
118 #[serde(rename = "")]
119 Empty,
120 #[serde(rename = "null")]
121 Null,
122}
123
124impl Default for RHashType {
125 fn default() -> RHashType {
126 Self::De9
127 }
128}
129#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
131pub enum Speed {
132 #[serde(rename = "1200")]
133 Variant1200,
134 #[serde(rename = "2400")]
135 Variant2400,
136 #[serde(rename = "4800")]
137 Variant4800,
138 #[serde(rename = "9600")]
139 Variant9600,
140 #[serde(rename = "19200")]
141 Variant19200,
142 #[serde(rename = "38400")]
143 Variant38400,
144 #[serde(rename = "57600")]
145 Variant57600,
146 #[serde(rename = "115200")]
147 Variant115200,
148 #[serde(rename = "null")]
149 Null,
150}
151
152impl Default for Speed {
153 fn default() -> Speed {
154 Self::Variant1200
155 }
156}