netbox_openapi/models/
brief_fhrp_group.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.4.2-Docker-3.4.1 (4.4)
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11/// BriefFhrpGroup : Adds support for custom fields and tags.
12
13#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct BriefFhrpGroup {
15    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
16    pub id: Option<i32>,
17    #[serde(rename = "url", skip_serializing_if = "Option::is_none")]
18    pub url: Option<String>,
19    #[serde(rename = "display", skip_serializing_if = "Option::is_none")]
20    pub display: Option<String>,
21    /// * `vrrp2` - VRRPv2 * `vrrp3` - VRRPv3 * `carp` - CARP * `clusterxl` - ClusterXL * `hsrp` - HSRP * `glbp` - GLBP * `other` - Other
22    #[serde(rename = "protocol")]
23    pub protocol: Protocol,
24    #[serde(rename = "group_id")]
25    pub group_id: i32,
26    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
27    pub description: Option<String>,
28}
29
30impl BriefFhrpGroup {
31    /// Adds support for custom fields and tags.
32    pub fn new(protocol: Protocol, group_id: i32) -> BriefFhrpGroup {
33        BriefFhrpGroup {
34            id: None,
35            url: None,
36            display: None,
37            protocol,
38            group_id,
39            description: None,
40        }
41    }
42}
43
44/// * `vrrp2` - VRRPv2 * `vrrp3` - VRRPv3 * `carp` - CARP * `clusterxl` - ClusterXL * `hsrp` - HSRP * `glbp` - GLBP * `other` - Other
45#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
46pub enum Protocol {
47    #[serde(rename = "vrrp2")]
48    Vrrp2,
49    #[serde(rename = "vrrp3")]
50    Vrrp3,
51    #[serde(rename = "carp")]
52    Carp,
53    #[serde(rename = "clusterxl")]
54    Clusterxl,
55    #[serde(rename = "hsrp")]
56    Hsrp,
57    #[serde(rename = "glbp")]
58    Glbp,
59    #[serde(rename = "other")]
60    Other,
61}
62
63impl Default for Protocol {
64    fn default() -> Protocol {
65        Self::Vrrp2
66    }
67}