redfish-codegen 0.3.1

An unopinionated translation of the Redfish specification into Rust.
Documentation
// Generated by redfish-codegen. Do not modify.

use crate::models;

/// Settings for an SNMP aggregation source.
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct SNMPSettings {
    /// The secret authentication key for SNMPv3.
    #[serde(rename = "AuthenticationKey")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub authentication_key: Option<String>,
    /// Indicates if the AuthenticationKey property is set.
    #[serde(rename = "AuthenticationKeySet")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub authentication_key_set: Option<bool>,
    #[serde(rename = "AuthenticationProtocol")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub authentication_protocol: Option<models::aggregation_source::v1_3_1::SNMPAuthenticationProtocols>,
    /// The secret authentication key for SNMPv3.
    #[serde(rename = "EncryptionKey")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub encryption_key: Option<String>,
    /// Indicates if the EncryptionKey property is set.
    #[serde(rename = "EncryptionKeySet")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub encryption_key_set: Option<bool>,
    #[serde(rename = "EncryptionProtocol")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub encryption_protocol: Option<models::aggregation_source::v1_3_1::SNMPEncryptionProtocols>,
    /// The SNMP trap community string.
    #[serde(rename = "TrapCommunity")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub trap_community: Option<String>,
}

impl crate::Metadata<'static> for SNMPSettings {
    const JSON_SCHEMA: &'static str = "AggregationSource.v1_3_1.json";
}