redfish-codegen 0.3.1

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


/// The Fibre Channel-specific port metrics for network ports.
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct FibreChannel {
    /// The total number of correctable forward error correction (FEC) errors.
    #[serde(rename = "CorrectableFECErrors")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub correctable_fec_errors: Option<i64>,
    /// The total number of invalid cyclic redundancy checks (CRCs).
    #[serde(rename = "InvalidCRCs")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub invalid_cr_cs: Option<i64>,
    /// The total number of invalid transmission words.
    #[serde(rename = "InvalidTXWords")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub invalid_tx_words: Option<i64>,
    /// The total number of link failures.
    #[serde(rename = "LinkFailures")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub link_failures: Option<i64>,
    /// The total number of losses of signal.
    #[serde(rename = "LossesOfSignal")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub losses_of_signal: Option<i64>,
    /// The total number of losses of sync.
    #[serde(rename = "LossesOfSync")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub losses_of_sync: Option<i64>,
    /// The number of times the receive buffer-to-buffer credit count transitioned to zero.
    #[serde(rename = "RXBBCreditZero")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub rxbb_credit_zero: Option<i64>,
    /// The total number of Fibre Channel exchanges received.
    #[serde(rename = "RXExchanges")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub rx_exchanges: Option<i64>,
    /// The total number of Fibre Channel sequences received.
    #[serde(rename = "RXSequences")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub rx_sequences: Option<i64>,
    /// The number of times the transmit buffer-to-buffer credit count transitioned to zero.
    #[serde(rename = "TXBBCreditZero")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub txbb_credit_zero: Option<i64>,
    /// The total amount of time the port has been blocked from transmitting due to lack of buffer credits.
    #[serde(rename = "TXBBCreditZeroDurationMilliseconds")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub txbb_credit_zero_duration_milliseconds: Option<i64>,
    /// The number of transmit buffer-to-buffer credits the port is configured to use.
    #[serde(rename = "TXBBCredits")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub txbb_credits: Option<i64>,
    /// The total number of Fibre Channel exchanges transmitted.
    #[serde(rename = "TXExchanges")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub tx_exchanges: Option<i64>,
    /// The total number of Fibre Channel sequences transmitted.
    #[serde(rename = "TXSequences")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub tx_sequences: Option<i64>,
    /// The total number of uncorrectable forward error correction (FEC) errors.
    #[serde(rename = "UncorrectableFECErrors")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub uncorrectable_fec_errors: Option<i64>,
}

impl crate::Metadata<'static> for FibreChannel {
    const JSON_SCHEMA: &'static str = "PortMetrics.v1_4_0.json";
}