netbox_openapi/models/
fhrp_group_assignment_request_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#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct FhrpGroupAssignmentRequestGroup {
13    /// * `vrrp2` - VRRPv2 * `vrrp3` - VRRPv3 * `carp` - CARP * `clusterxl` - ClusterXL * `hsrp` - HSRP * `glbp` - GLBP * `other` - Other
14    #[serde(rename = "protocol")]
15    pub protocol: Protocol,
16    #[serde(rename = "group_id")]
17    pub group_id: i32,
18    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
19    pub description: Option<String>,
20}
21
22impl FhrpGroupAssignmentRequestGroup {
23    pub fn new(protocol: Protocol, group_id: i32) -> FhrpGroupAssignmentRequestGroup {
24        FhrpGroupAssignmentRequestGroup {
25            protocol,
26            group_id,
27            description: None,
28        }
29    }
30}
31
32/// * `vrrp2` - VRRPv2 * `vrrp3` - VRRPv3 * `carp` - CARP * `clusterxl` - ClusterXL * `hsrp` - HSRP * `glbp` - GLBP * `other` - Other
33#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
34pub enum Protocol {
35    #[serde(rename = "vrrp2")]
36    Vrrp2,
37    #[serde(rename = "vrrp3")]
38    Vrrp3,
39    #[serde(rename = "carp")]
40    Carp,
41    #[serde(rename = "clusterxl")]
42    Clusterxl,
43    #[serde(rename = "hsrp")]
44    Hsrp,
45    #[serde(rename = "glbp")]
46    Glbp,
47    #[serde(rename = "other")]
48    Other,
49}
50
51impl Default for Protocol {
52    fn default() -> Protocol {
53        Self::Vrrp2
54    }
55}