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;

/// The capabilities of a controller.
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct ControllerCapabilities {
    #[serde(rename = "DataCenterBridging")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub data_center_bridging: Option<models::network_adapter::v1_9_0::DataCenterBridging>,
    #[serde(rename = "NPAR")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub npar: Option<models::network_adapter::v1_9_0::NicPartitioning>,
    #[serde(rename = "NPIV")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub npiv: Option<models::network_adapter::v1_9_0::NPIV>,
    /// The maximum number of physical functions available on this controller.
    #[serde(rename = "NetworkDeviceFunctionCount")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub network_device_function_count: Option<i64>,
    /// The number of physical ports on this controller.
    #[serde(rename = "NetworkPortCount")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub network_port_count: Option<i64>,
    #[serde(rename = "VirtualizationOffload")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub virtualization_offload: Option<models::network_adapter::v1_9_0::VirtualizationOffload>,
}

impl crate::Metadata<'static> for ControllerCapabilities {
    const JSON_SCHEMA: &'static str = "NetworkAdapter.v1_9_0.json";
}