use crate::models;
#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
#[derive(derivative::Derivative)]
#[derivative(Default)]
pub struct Links {
#[serde(rename = "Chassis")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub chassis: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "Chassis@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub chassis_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "ConsumingComputerSystems")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub consuming_computer_systems: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ConsumingComputerSystems@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub consuming_computer_systems_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "CooledBy")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cooled_by: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "CooledBy@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub cooled_by_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "Endpoints")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoints: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "Endpoints@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub endpoints_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "ManagedBy")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub managed_by: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ManagedBy@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub managed_by_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "Oem")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub oem: Option<models::resource::Oem>,
#[serde(rename = "OffloadedNetworkDeviceFunctions")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub offloaded_network_device_functions: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "OffloadedNetworkDeviceFunctions@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub offloaded_network_device_functions_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "PoweredBy")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub powered_by: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "PoweredBy@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub powered_by_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "ResourceBlocks")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resource_blocks: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "ResourceBlocks@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub resource_blocks_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "SupplyingComputerSystems")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub supplying_computer_systems: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "SupplyingComputerSystems@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub supplying_computer_systems_odata_count: Option<models::odata_v4::Count>,
#[serde(rename = "TrustedComponents")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub trusted_components: Option<Vec<models::odata_v4::IdRef>>,
#[serde(rename = "TrustedComponents@odata.count")]
#[serde(default, skip_serializing_if = "Option::is_none")]
pub trusted_components_odata_count: Option<models::odata_v4::Count>,
}
impl crate::Metadata<'static> for Links {
const JSON_SCHEMA: &'static str = "ComputerSystem.v1_20_1.json";
}