1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct WritableWirelessLanRequest {
15 #[serde(rename = "ssid")]
16 pub ssid: String,
17 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
18 pub description: Option<String>,
19 #[serde(
20 rename = "group",
21 default,
22 with = "::serde_with::rust::double_option",
23 skip_serializing_if = "Option::is_none"
24 )]
25 pub group: Option<Option<Box<crate::models::PatchedWritableWirelessLanRequestGroup>>>,
26 #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
28 pub status: Option<Status>,
29 #[serde(
30 rename = "vlan",
31 default,
32 with = "::serde_with::rust::double_option",
33 skip_serializing_if = "Option::is_none"
34 )]
35 pub vlan: Option<Option<Box<crate::models::InterfaceRequestUntaggedVlan>>>,
36 #[serde(
37 rename = "scope_type",
38 default,
39 with = "::serde_with::rust::double_option",
40 skip_serializing_if = "Option::is_none"
41 )]
42 pub scope_type: Option<Option<String>>,
43 #[serde(
44 rename = "scope_id",
45 default,
46 with = "::serde_with::rust::double_option",
47 skip_serializing_if = "Option::is_none"
48 )]
49 pub scope_id: Option<Option<i32>>,
50 #[serde(
51 rename = "tenant",
52 default,
53 with = "::serde_with::rust::double_option",
54 skip_serializing_if = "Option::is_none"
55 )]
56 pub tenant: Option<Option<Box<crate::models::AsnRangeRequestTenant>>>,
57 #[serde(
59 rename = "auth_type",
60 default,
61 with = "::serde_with::rust::double_option",
62 skip_serializing_if = "Option::is_none"
63 )]
64 pub auth_type: Option<Option<AuthType>>,
65 #[serde(
67 rename = "auth_cipher",
68 default,
69 with = "::serde_with::rust::double_option",
70 skip_serializing_if = "Option::is_none"
71 )]
72 pub auth_cipher: Option<Option<AuthCipher>>,
73 #[serde(rename = "auth_psk", skip_serializing_if = "Option::is_none")]
74 pub auth_psk: Option<String>,
75 #[serde(
76 rename = "owner",
77 default,
78 with = "::serde_with::rust::double_option",
79 skip_serializing_if = "Option::is_none"
80 )]
81 pub owner: Option<Option<Box<crate::models::AsnRangeRequestOwner>>>,
82 #[serde(rename = "comments", skip_serializing_if = "Option::is_none")]
83 pub comments: Option<String>,
84 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
85 pub tags: Option<Vec<crate::models::NestedTagRequest>>,
86 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
87 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
88}
89
90impl WritableWirelessLanRequest {
91 pub fn new(ssid: String) -> WritableWirelessLanRequest {
93 WritableWirelessLanRequest {
94 ssid,
95 description: None,
96 group: None,
97 status: None,
98 vlan: None,
99 scope_type: None,
100 scope_id: None,
101 tenant: None,
102 auth_type: None,
103 auth_cipher: None,
104 auth_psk: None,
105 owner: None,
106 comments: None,
107 tags: None,
108 custom_fields: None,
109 }
110 }
111}
112
113#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
115pub enum Status {
116 #[serde(rename = "active")]
117 Active,
118 #[serde(rename = "reserved")]
119 Reserved,
120 #[serde(rename = "disabled")]
121 Disabled,
122 #[serde(rename = "deprecated")]
123 Deprecated,
124}
125
126impl Default for Status {
127 fn default() -> Status {
128 Self::Active
129 }
130}
131#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
133pub enum AuthType {
134 #[serde(rename = "open")]
135 Open,
136 #[serde(rename = "wep")]
137 Wep,
138 #[serde(rename = "wpa-personal")]
139 WpaPersonal,
140 #[serde(rename = "wpa-enterprise")]
141 WpaEnterprise,
142 #[serde(rename = "")]
143 Empty,
144 #[serde(rename = "null")]
145 Null,
146}
147
148impl Default for AuthType {
149 fn default() -> AuthType {
150 Self::Open
151 }
152}
153#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
155pub enum AuthCipher {
156 #[serde(rename = "auto")]
157 Auto,
158 #[serde(rename = "tkip")]
159 Tkip,
160 #[serde(rename = "aes")]
161 Aes,
162 #[serde(rename = "")]
163 Empty,
164 #[serde(rename = "null")]
165 Null,
166}
167
168impl Default for AuthCipher {
169 fn default() -> AuthCipher {
170 Self::Auto
171 }
172}