1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct WritableRearPortTemplateRequest {
15 #[serde(
16 rename = "device_type",
17 default,
18 with = "::serde_with::rust::double_option",
19 skip_serializing_if = "Option::is_none"
20 )]
21 pub device_type: Option<Option<Box<crate::models::ConsolePortTemplateRequestDeviceType>>>,
22 #[serde(
23 rename = "module_type",
24 default,
25 with = "::serde_with::rust::double_option",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub module_type: Option<Option<Box<crate::models::ConsolePortTemplateRequestModuleType>>>,
29 #[serde(rename = "name")]
31 pub name: String,
32 #[serde(rename = "label", skip_serializing_if = "Option::is_none")]
34 pub label: Option<String>,
35 #[serde(rename = "type")]
37 pub r#type: RHashType,
38 #[serde(rename = "color", skip_serializing_if = "Option::is_none")]
39 pub color: Option<String>,
40 #[serde(rename = "positions", skip_serializing_if = "Option::is_none")]
41 pub positions: Option<i32>,
42 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
43 pub description: Option<String>,
44}
45
46impl WritableRearPortTemplateRequest {
47 pub fn new(name: String, r#type: RHashType) -> WritableRearPortTemplateRequest {
49 WritableRearPortTemplateRequest {
50 device_type: None,
51 module_type: None,
52 name,
53 label: None,
54 r#type,
55 color: None,
56 positions: None,
57 description: None,
58 }
59 }
60}
61
62#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
64pub enum RHashType {
65 #[serde(rename = "8p8c")]
66 Variant8p8c,
67 #[serde(rename = "8p6c")]
68 Variant8p6c,
69 #[serde(rename = "8p4c")]
70 Variant8p4c,
71 #[serde(rename = "8p2c")]
72 Variant8p2c,
73 #[serde(rename = "6p6c")]
74 Variant6p6c,
75 #[serde(rename = "6p4c")]
76 Variant6p4c,
77 #[serde(rename = "6p2c")]
78 Variant6p2c,
79 #[serde(rename = "4p4c")]
80 Variant4p4c,
81 #[serde(rename = "4p2c")]
82 Variant4p2c,
83 #[serde(rename = "gg45")]
84 Gg45,
85 #[serde(rename = "tera-4p")]
86 Tera4p,
87 #[serde(rename = "tera-2p")]
88 Tera2p,
89 #[serde(rename = "tera-1p")]
90 Tera1p,
91 #[serde(rename = "110-punch")]
92 Variant110Punch,
93 #[serde(rename = "bnc")]
94 Bnc,
95 #[serde(rename = "f")]
96 F,
97 #[serde(rename = "n")]
98 N,
99 #[serde(rename = "mrj21")]
100 Mrj21,
101 #[serde(rename = "fc")]
102 Fc,
103 #[serde(rename = "fc-pc")]
104 FcPc,
105 #[serde(rename = "fc-upc")]
106 FcUpc,
107 #[serde(rename = "fc-apc")]
108 FcApc,
109 #[serde(rename = "lc")]
110 Lc,
111 #[serde(rename = "lc-pc")]
112 LcPc,
113 #[serde(rename = "lc-upc")]
114 LcUpc,
115 #[serde(rename = "lc-apc")]
116 LcApc,
117 #[serde(rename = "lsh")]
118 Lsh,
119 #[serde(rename = "lsh-pc")]
120 LshPc,
121 #[serde(rename = "lsh-upc")]
122 LshUpc,
123 #[serde(rename = "lsh-apc")]
124 LshApc,
125 #[serde(rename = "lx5")]
126 Lx5,
127 #[serde(rename = "lx5-pc")]
128 Lx5Pc,
129 #[serde(rename = "lx5-upc")]
130 Lx5Upc,
131 #[serde(rename = "lx5-apc")]
132 Lx5Apc,
133 #[serde(rename = "mpo")]
134 Mpo,
135 #[serde(rename = "mtrj")]
136 Mtrj,
137 #[serde(rename = "sc")]
138 Sc,
139 #[serde(rename = "sc-pc")]
140 ScPc,
141 #[serde(rename = "sc-upc")]
142 ScUpc,
143 #[serde(rename = "sc-apc")]
144 ScApc,
145 #[serde(rename = "st")]
146 St,
147 #[serde(rename = "cs")]
148 Cs,
149 #[serde(rename = "sn")]
150 Sn,
151 #[serde(rename = "sma-905")]
152 Sma905,
153 #[serde(rename = "sma-906")]
154 Sma906,
155 #[serde(rename = "urm-p2")]
156 UrmP2,
157 #[serde(rename = "urm-p4")]
158 UrmP4,
159 #[serde(rename = "urm-p8")]
160 UrmP8,
161 #[serde(rename = "splice")]
162 Splice,
163 #[serde(rename = "usb-a")]
164 UsbA,
165 #[serde(rename = "usb-b")]
166 UsbB,
167 #[serde(rename = "usb-c")]
168 UsbC,
169 #[serde(rename = "usb-mini-a")]
170 UsbMiniA,
171 #[serde(rename = "usb-mini-b")]
172 UsbMiniB,
173 #[serde(rename = "usb-micro-a")]
174 UsbMicroA,
175 #[serde(rename = "usb-micro-b")]
176 UsbMicroB,
177 #[serde(rename = "usb-micro-ab")]
178 UsbMicroAb,
179 #[serde(rename = "other")]
180 Other,
181}
182
183impl Default for RHashType {
184 fn default() -> RHashType {
185 Self::Variant8p8c
186 }
187}