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