redfish_codegen/models/storage_controller/v1_7_0/
links.rs

1// Generated by redfish-codegen. Do not modify.
2
3use crate::models;
4
5/// The links to other resources that are related to this resource.
6#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct Links {
10    /// An array of links to volumes that are attached to this controller instance.
11    #[serde(rename = "AttachedVolumes")]
12    #[serde(default, skip_serializing_if = "Option::is_none")]
13    pub attached_volumes: Option<Vec<models::odata_v4::IdRef>>,
14    #[serde(rename = "AttachedVolumes@odata.count")]
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub attached_volumes_odata_count: Option<models::odata_v4::Count>,
17    /// The batteries that provide power to this storage controller during a power loss event.
18    #[serde(rename = "Batteries")]
19    #[serde(default, skip_serializing_if = "Option::is_none")]
20    pub batteries: Option<Vec<models::odata_v4::IdRef>>,
21    #[serde(rename = "Batteries@odata.count")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub batteries_odata_count: Option<models::odata_v4::Count>,
24    /// An array of links to the endpoints that connect to this controller.
25    #[serde(rename = "Endpoints")]
26    #[serde(default, skip_serializing_if = "Option::is_none")]
27    pub endpoints: Option<Vec<models::odata_v4::IdRef>>,
28    #[serde(rename = "Endpoints@odata.count")]
29    #[serde(default, skip_serializing_if = "Option::is_none")]
30    pub endpoints_odata_count: Option<models::odata_v4::Count>,
31    /// The NVMe subsystems discovered by this discovery controller.
32    #[serde(rename = "NVMeDiscoveredSubsystems")]
33    #[serde(default, skip_serializing_if = "Option::is_none")]
34    pub nvme_discovered_subsystems: Option<Vec<models::odata_v4::IdRef>>,
35    #[serde(rename = "NVMeDiscoveredSubsystems@odata.count")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub nvme_discovered_subsystems_odata_count: Option<models::odata_v4::Count>,
38    /// The network device functions that provide connectivity to this controller.
39    #[serde(rename = "NetworkDeviceFunctions")]
40    #[serde(default, skip_serializing_if = "Option::is_none")]
41    pub network_device_functions: Option<Vec<models::odata_v4::IdRef>>,
42    #[serde(rename = "NetworkDeviceFunctions@odata.count")]
43    #[serde(default, skip_serializing_if = "Option::is_none")]
44    pub network_device_functions_odata_count: Option<models::odata_v4::Count>,
45    #[serde(rename = "Oem")]
46    #[serde(default, skip_serializing_if = "Option::is_none")]
47    pub oem: Option<models::resource::Oem>,
48    /// An array of links to the PCIe functions that the storage controller produces.
49    #[serde(rename = "PCIeFunctions")]
50    #[serde(default, skip_serializing_if = "Option::is_none")]
51    pub pcie_functions: Option<Vec<models::odata_v4::IdRef>>,
52    #[serde(rename = "PCIeFunctions@odata.count")]
53    #[serde(default, skip_serializing_if = "Option::is_none")]
54    pub pcie_functions_odata_count: Option<models::odata_v4::Count>,
55}
56
57impl crate::Metadata<'static> for Links {
58    const JSON_SCHEMA: &'static str = "StorageController.v1_7_0.json";
59}