redfish_codegen/models/chassis/v1_23_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 the cables connected to this chassis.
11    #[serde(rename = "Cables")]
12    #[serde(default, skip_serializing_if = "Option::is_none")]
13    pub cables: Option<Vec<models::odata_v4::IdRef>>,
14    #[serde(rename = "Cables@odata.count")]
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub cables_odata_count: Option<models::odata_v4::Count>,
17    /// An array of links to the computer systems that this chassis directly and wholly contains.
18    #[serde(rename = "ComputerSystems")]
19    #[serde(default, skip_serializing_if = "Option::is_none")]
20    pub computer_systems: Option<Vec<models::odata_v4::IdRef>>,
21    #[serde(rename = "ComputerSystems@odata.count")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub computer_systems_odata_count: Option<models::odata_v4::Count>,
24    /// An array of links to cooling loops connected to this chassis.
25    #[serde(rename = "ConnectedCoolingLoops")]
26    #[serde(default, skip_serializing_if = "Option::is_none")]
27    pub connected_cooling_loops: Option<Vec<models::odata_v4::IdRef>>,
28    #[serde(rename = "ConnectedCoolingLoops@odata.count")]
29    #[serde(default, skip_serializing_if = "Option::is_none")]
30    pub connected_cooling_loops_odata_count: Option<models::odata_v4::Count>,
31    #[serde(rename = "ContainedBy")]
32    #[serde(default, skip_serializing_if = "Option::is_none")]
33    pub contained_by: Option<models::odata_v4::IdRef>,
34    /// An array of links to any other chassis that this chassis has in it.
35    #[serde(rename = "Contains")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub contains: Option<Vec<models::odata_v4::IdRef>>,
38    #[serde(rename = "Contains@odata.count")]
39    #[serde(default, skip_serializing_if = "Option::is_none")]
40    pub contains_odata_count: Option<models::odata_v4::Count>,
41    /// An array of links to resources or objects that cool this chassis.  Normally, the link is for either a chassis or a specific set of fans.
42    #[serde(rename = "CooledBy")]
43    #[serde(default, skip_serializing_if = "Option::is_none")]
44    pub cooled_by: Option<Vec<models::odata_v4::IdRef>>,
45    #[serde(rename = "CooledBy@odata.count")]
46    #[serde(default, skip_serializing_if = "Option::is_none")]
47    pub cooled_by_odata_count: Option<models::odata_v4::Count>,
48    /// An arrays of links to cooling unit functionality contained in this chassis.
49    #[serde(rename = "CoolingUnits")]
50    #[serde(default, skip_serializing_if = "Option::is_none")]
51    pub cooling_units: Option<Vec<models::odata_v4::IdRef>>,
52    #[serde(rename = "CoolingUnits@odata.count")]
53    #[serde(default, skip_serializing_if = "Option::is_none")]
54    pub cooling_units_odata_count: Option<models::odata_v4::Count>,
55    /// An array of links to the drives located in this chassis.
56    #[serde(rename = "Drives")]
57    #[serde(default, skip_serializing_if = "Option::is_none")]
58    pub drives: Option<Vec<models::odata_v4::IdRef>>,
59    #[serde(rename = "Drives@odata.count")]
60    #[serde(default, skip_serializing_if = "Option::is_none")]
61    pub drives_odata_count: Option<models::odata_v4::Count>,
62    #[serde(rename = "Facility")]
63    #[serde(default, skip_serializing_if = "Option::is_none")]
64    pub facility: Option<models::odata_v4::IdRef>,
65    /// An array of links to the fans that cool this chassis.
66    #[serde(rename = "Fans")]
67    #[serde(default, skip_serializing_if = "Option::is_none")]
68    pub fans: Option<Vec<models::odata_v4::IdRef>>,
69    #[serde(rename = "Fans@odata.count")]
70    #[serde(default, skip_serializing_if = "Option::is_none")]
71    pub fans_odata_count: Option<models::odata_v4::Count>,
72    /// An array of links to the managers responsible for managing this chassis.
73    #[serde(rename = "ManagedBy")]
74    #[serde(default, skip_serializing_if = "Option::is_none")]
75    pub managed_by: Option<Vec<models::odata_v4::IdRef>>,
76    #[serde(rename = "ManagedBy@odata.count")]
77    #[serde(default, skip_serializing_if = "Option::is_none")]
78    pub managed_by_odata_count: Option<models::odata_v4::Count>,
79    /// An array of links to the managers located in this chassis.
80    #[serde(rename = "ManagersInChassis")]
81    #[serde(default, skip_serializing_if = "Option::is_none")]
82    pub managers_in_chassis: Option<Vec<models::odata_v4::IdRef>>,
83    #[serde(rename = "ManagersInChassis@odata.count")]
84    #[serde(default, skip_serializing_if = "Option::is_none")]
85    pub managers_in_chassis_odata_count: Option<models::odata_v4::Count>,
86    #[serde(rename = "Oem")]
87    #[serde(default, skip_serializing_if = "Option::is_none")]
88    pub oem: Option<models::resource::Oem>,
89    /// An array of links to the PCIe devices located in this chassis.
90    #[serde(rename = "PCIeDevices")]
91    #[serde(default, skip_serializing_if = "Option::is_none")]
92    pub pcie_devices: Option<Vec<models::odata_v4::IdRef>>,
93    #[serde(rename = "PCIeDevices@odata.count")]
94    #[serde(default, skip_serializing_if = "Option::is_none")]
95    pub pcie_devices_odata_count: Option<models::odata_v4::Count>,
96    #[serde(rename = "PowerDistribution")]
97    #[serde(default, skip_serializing_if = "Option::is_none")]
98    pub power_distribution: Option<models::odata_v4::IdRef>,
99    /// An array of links to the outlets that provide power to this chassis.
100    #[serde(rename = "PowerOutlets")]
101    #[serde(default, skip_serializing_if = "Option::is_none")]
102    pub power_outlets: Option<Vec<models::odata_v4::IdRef>>,
103    #[serde(rename = "PowerOutlets@odata.count")]
104    #[serde(default, skip_serializing_if = "Option::is_none")]
105    pub power_outlets_odata_count: Option<models::odata_v4::Count>,
106    /// An array of links to the power supplies that provide power to this chassis.
107    #[serde(rename = "PowerSupplies")]
108    #[serde(default, skip_serializing_if = "Option::is_none")]
109    pub power_supplies: Option<Vec<models::odata_v4::IdRef>>,
110    #[serde(rename = "PowerSupplies@odata.count")]
111    #[serde(default, skip_serializing_if = "Option::is_none")]
112    pub power_supplies_odata_count: Option<models::odata_v4::Count>,
113    /// An array of links to resources or objects that power this chassis.  Normally, the link is for either a chassis or a specific set of power supplies.
114    #[serde(rename = "PoweredBy")]
115    #[serde(default, skip_serializing_if = "Option::is_none")]
116    pub powered_by: Option<Vec<models::odata_v4::IdRef>>,
117    #[serde(rename = "PoweredBy@odata.count")]
118    #[serde(default, skip_serializing_if = "Option::is_none")]
119    pub powered_by_odata_count: Option<models::odata_v4::Count>,
120    /// An array of links to the processors located in this chassis.
121    #[serde(rename = "Processors")]
122    #[serde(default, skip_serializing_if = "Option::is_none")]
123    pub processors: Option<Vec<models::odata_v4::IdRef>>,
124    #[serde(rename = "Processors@odata.count")]
125    #[serde(default, skip_serializing_if = "Option::is_none")]
126    pub processors_odata_count: Option<models::odata_v4::Count>,
127    /// An array of links to the resource blocks located in this chassis.
128    #[serde(rename = "ResourceBlocks")]
129    #[serde(default, skip_serializing_if = "Option::is_none")]
130    pub resource_blocks: Option<Vec<models::odata_v4::IdRef>>,
131    #[serde(rename = "ResourceBlocks@odata.count")]
132    #[serde(default, skip_serializing_if = "Option::is_none")]
133    pub resource_blocks_odata_count: Option<models::odata_v4::Count>,
134    /// An array of links to the storage subsystems connected to or inside this chassis.
135    #[serde(rename = "Storage")]
136    #[serde(default, skip_serializing_if = "Option::is_none")]
137    pub storage: Option<Vec<models::odata_v4::IdRef>>,
138    #[serde(rename = "Storage@odata.count")]
139    #[serde(default, skip_serializing_if = "Option::is_none")]
140    pub storage_odata_count: Option<models::odata_v4::Count>,
141    /// An array of links to the switches located in this chassis.
142    #[serde(rename = "Switches")]
143    #[serde(default, skip_serializing_if = "Option::is_none")]
144    pub switches: Option<Vec<models::odata_v4::IdRef>>,
145    #[serde(rename = "Switches@odata.count")]
146    #[serde(default, skip_serializing_if = "Option::is_none")]
147    pub switches_odata_count: Option<models::odata_v4::Count>,
148}
149
150impl crate::Metadata<'static> for Links {
151    const JSON_SCHEMA: &'static str = "Chassis.v1_23_0.json";
152}