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;

/// Composition status of the resource block.
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct CompositionStatus {
    #[serde(rename = "CompositionState")]
    pub composition_state: models::resource_block::v1_4_1::CompositionState,
    /// The maximum number of compositions in which this resource block can participate simultaneously.
    #[serde(rename = "MaxCompositions")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub max_compositions: Option<i64>,
    /// The number of compositions in which this resource block is currently participating.
    #[serde(rename = "NumberOfCompositions")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub number_of_compositions: Option<i64>,
    /// An indication of whether any client has reserved the resource block.
    #[serde(rename = "Reserved")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub reserved: Option<bool>,
    /// An indication of whether this resource block can participate in multiple compositions simultaneously.
    #[serde(rename = "SharingCapable")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub sharing_capable: Option<bool>,
    /// An indication of whether this resource block is allowed to participate in multiple compositions simultaneously.
    #[serde(rename = "SharingEnabled")]
    #[serde(default, skip_serializing_if = "Option::is_none")]
    pub sharing_enabled: Option<bool>,
}

impl crate::Metadata<'static> for CompositionStatus {
    const JSON_SCHEMA: &'static str = "ResourceBlock.v1_4_1.json";
}