Skip to main content

netbox_openapi/models/
wireless_link_request.rs

1/*
2 * NetBox REST API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 4.6.2 (4.6)
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11/// WirelessLinkRequest : Base serializer class for models inheriting from PrimaryModel.
12
13#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct WirelessLinkRequest {
15    #[serde(rename = "interface_a")]
16    pub interface_a: Box<crate::models::PatchedWritableVirtualCircuitTerminationRequestInterface>,
17    #[serde(rename = "interface_b")]
18    pub interface_b: Box<crate::models::PatchedWritableVirtualCircuitTerminationRequestInterface>,
19    #[serde(rename = "ssid", skip_serializing_if = "Option::is_none")]
20    pub ssid: Option<String>,
21    /// * `connected` - Connected * `planned` - Planned * `decommissioning` - Decommissioning
22    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
23    pub status: Option<Status>,
24    #[serde(
25        rename = "tenant",
26        default,
27        with = "::serde_with::rust::double_option",
28        skip_serializing_if = "Option::is_none"
29    )]
30    pub tenant: Option<Option<Box<crate::models::AsnRangeRequestTenant>>>,
31    /// * `open` - Open * `wep` - WEP * `wpa-personal` - WPA Personal (PSK) * `wpa-enterprise` - WPA Enterprise
32    #[serde(rename = "auth_type", skip_serializing_if = "Option::is_none")]
33    pub auth_type: Option<AuthType>,
34    /// * `auto` - Auto * `tkip` - TKIP * `aes` - AES
35    #[serde(rename = "auth_cipher", skip_serializing_if = "Option::is_none")]
36    pub auth_cipher: Option<AuthCipher>,
37    #[serde(rename = "auth_psk", skip_serializing_if = "Option::is_none")]
38    pub auth_psk: Option<String>,
39    #[serde(
40        rename = "distance",
41        default,
42        with = "::serde_with::rust::double_option",
43        skip_serializing_if = "Option::is_none"
44    )]
45    pub distance: Option<Option<f64>>,
46    /// * `km` - Kilometers * `m` - Meters * `mi` - Miles * `ft` - Feet
47    #[serde(
48        rename = "distance_unit",
49        default,
50        with = "::serde_with::rust::double_option",
51        skip_serializing_if = "Option::is_none"
52    )]
53    pub distance_unit: Option<Option<DistanceUnit>>,
54    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
55    pub description: Option<String>,
56    #[serde(
57        rename = "owner",
58        default,
59        with = "::serde_with::rust::double_option",
60        skip_serializing_if = "Option::is_none"
61    )]
62    pub owner: Option<Option<Box<crate::models::AsnRangeRequestOwner>>>,
63    #[serde(rename = "comments", skip_serializing_if = "Option::is_none")]
64    pub comments: Option<String>,
65    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
66    pub tags: Option<Vec<crate::models::NestedTagRequest>>,
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 WirelessLinkRequest {
72    /// Base serializer class for models inheriting from PrimaryModel.
73    pub fn new(
74        interface_a: crate::models::PatchedWritableVirtualCircuitTerminationRequestInterface,
75        interface_b: crate::models::PatchedWritableVirtualCircuitTerminationRequestInterface,
76    ) -> WirelessLinkRequest {
77        WirelessLinkRequest {
78            interface_a: Box::new(interface_a),
79            interface_b: Box::new(interface_b),
80            ssid: None,
81            status: None,
82            tenant: None,
83            auth_type: None,
84            auth_cipher: None,
85            auth_psk: None,
86            distance: None,
87            distance_unit: None,
88            description: None,
89            owner: None,
90            comments: None,
91            tags: None,
92            custom_fields: None,
93        }
94    }
95}
96
97/// * `connected` - Connected * `planned` - Planned * `decommissioning` - Decommissioning
98#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
99pub enum Status {
100    #[serde(rename = "connected")]
101    Connected,
102    #[serde(rename = "planned")]
103    Planned,
104    #[serde(rename = "decommissioning")]
105    Decommissioning,
106}
107
108impl Default for Status {
109    fn default() -> Status {
110        Self::Connected
111    }
112}
113/// * `open` - Open * `wep` - WEP * `wpa-personal` - WPA Personal (PSK) * `wpa-enterprise` - WPA Enterprise
114#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
115pub enum AuthType {
116    #[serde(rename = "open")]
117    Open,
118    #[serde(rename = "wep")]
119    Wep,
120    #[serde(rename = "wpa-personal")]
121    WpaPersonal,
122    #[serde(rename = "wpa-enterprise")]
123    WpaEnterprise,
124    #[serde(rename = "")]
125    Empty,
126}
127
128impl Default for AuthType {
129    fn default() -> AuthType {
130        Self::Open
131    }
132}
133/// * `auto` - Auto * `tkip` - TKIP * `aes` - AES
134#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
135pub enum AuthCipher {
136    #[serde(rename = "auto")]
137    Auto,
138    #[serde(rename = "tkip")]
139    Tkip,
140    #[serde(rename = "aes")]
141    Aes,
142    #[serde(rename = "")]
143    Empty,
144}
145
146impl Default for AuthCipher {
147    fn default() -> AuthCipher {
148        Self::Auto
149    }
150}
151/// * `km` - Kilometers * `m` - Meters * `mi` - Miles * `ft` - Feet
152#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
153pub enum DistanceUnit {
154    #[serde(rename = "km")]
155    Km,
156    #[serde(rename = "m")]
157    M,
158    #[serde(rename = "mi")]
159    Mi,
160    #[serde(rename = "ft")]
161    Ft,
162    #[serde(rename = "")]
163    Empty,
164    #[serde(rename = "null")]
165    Null,
166}
167
168impl Default for DistanceUnit {
169    fn default() -> DistanceUnit {
170        Self::Km
171    }
172}