redfish_codegen/models/chassis/v1_23_0/
chassis.rs1use crate::models;
4
5#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct Chassis {
10 #[serde(rename = "@odata.context")]
11 #[serde(skip_deserializing)]
12 #[serde(default, skip_serializing_if = "Option::is_none")]
13 pub odata_context: Option<models::odata_v4::Context>,
14 #[serde(rename = "@odata.etag")]
15 #[serde(skip_deserializing)]
16 #[serde(default, skip_serializing_if = "Option::is_none")]
17 pub odata_etag: Option<models::odata_v4::Etag>,
18 #[serde(rename = "@odata.id")]
19 #[serde(skip_deserializing)]
20 pub odata_id: models::odata_v4::Id,
21 #[serde(rename = "@odata.type")]
22 #[serde(skip_deserializing)]
23 #[derivative(Default(value = "models::odata_v4::Type(\"#Chassis.v1_23_0.Chassis\".to_string())"))]
24 pub odata_type: models::odata_v4::Type,
25 #[serde(rename = "Actions")]
26 #[serde(default, skip_serializing_if = "Option::is_none")]
27 pub actions: Option<models::chassis::v1_23_0::Actions>,
28 #[serde(rename = "Assembly")]
29 #[serde(default, skip_serializing_if = "Option::is_none")]
30 pub assembly: Option<models::odata_v4::IdRef>,
31 #[serde(rename = "AssetTag")]
33 #[serde(default, skip_serializing_if = "Option::is_none")]
34 pub asset_tag: Option<String>,
35 #[serde(rename = "Certificates")]
36 #[serde(default, skip_serializing_if = "Option::is_none")]
37 pub certificates: Option<models::odata_v4::IdRef>,
38 #[serde(rename = "ChassisType")]
39 pub chassis_type: models::chassis::v1_23_0::ChassisType,
40 #[serde(rename = "Controls")]
41 #[serde(default, skip_serializing_if = "Option::is_none")]
42 pub controls: Option<models::odata_v4::IdRef>,
43 #[serde(rename = "DepthMm")]
45 #[serde(default, skip_serializing_if = "Option::is_none")]
46 pub depth_mm: Option<f64>,
47 #[serde(rename = "Description")]
48 #[serde(default, skip_serializing_if = "Option::is_none")]
49 pub description: Option<models::resource::Description>,
50 #[serde(rename = "Drives")]
51 #[serde(default, skip_serializing_if = "Option::is_none")]
52 pub drives: Option<models::odata_v4::IdRef>,
53 #[serde(rename = "ElectricalSourceManagerURIs")]
55 #[serde(default, skip_serializing_if = "Option::is_none")]
56 pub electrical_source_manager_ur_is: Option<Vec<String>>,
57 #[serde(rename = "ElectricalSourceNames")]
59 #[serde(default, skip_serializing_if = "Option::is_none")]
60 pub electrical_source_names: Option<Vec<String>>,
61 #[serde(rename = "EnvironmentMetrics")]
62 #[serde(default, skip_serializing_if = "Option::is_none")]
63 pub environment_metrics: Option<models::odata_v4::IdRef>,
64 #[serde(rename = "EnvironmentalClass")]
65 #[serde(default, skip_serializing_if = "Option::is_none")]
66 pub environmental_class: Option<models::chassis::v1_23_0::EnvironmentalClass>,
67 #[serde(rename = "FabricAdapters")]
68 #[serde(default, skip_serializing_if = "Option::is_none")]
69 pub fabric_adapters: Option<models::odata_v4::IdRef>,
70 #[serde(rename = "HeightMm")]
72 #[serde(default, skip_serializing_if = "Option::is_none")]
73 pub height_mm: Option<f64>,
74 #[serde(rename = "HotPluggable")]
76 #[serde(default, skip_serializing_if = "Option::is_none")]
77 pub hot_pluggable: Option<bool>,
78 #[serde(rename = "Id")]
79 #[serde(skip_deserializing)]
80 pub id: models::resource::Id,
81 #[serde(rename = "IndicatorLED")]
82 #[serde(default, skip_serializing_if = "Option::is_none")]
83 pub indicator_led: Option<models::chassis::v1_23_0::IndicatorLED>,
84 #[serde(rename = "Links")]
85 #[serde(default, skip_serializing_if = "Option::is_none")]
86 pub links: Option<models::chassis::v1_23_0::Links>,
87 #[serde(rename = "Location")]
88 #[serde(default, skip_serializing_if = "Option::is_none")]
89 pub location: Option<models::resource::Location>,
90 #[serde(rename = "LocationIndicatorActive")]
92 #[serde(default, skip_serializing_if = "Option::is_none")]
93 pub location_indicator_active: Option<bool>,
94 #[serde(rename = "LogServices")]
95 #[serde(default, skip_serializing_if = "Option::is_none")]
96 pub log_services: Option<models::odata_v4::IdRef>,
97 #[serde(rename = "Manufacturer")]
99 #[serde(default, skip_serializing_if = "Option::is_none")]
100 pub manufacturer: Option<String>,
101 #[serde(rename = "MaxPowerWatts")]
103 #[serde(default, skip_serializing_if = "Option::is_none")]
104 pub max_power_watts: Option<f64>,
105 #[serde(rename = "Measurements")]
107 #[serde(default, skip_serializing_if = "Option::is_none")]
108 pub measurements: Option<Vec<models::software_inventory::MeasurementBlock>>,
109 #[serde(rename = "MediaControllers")]
110 #[serde(default, skip_serializing_if = "Option::is_none")]
111 pub media_controllers: Option<models::odata_v4::IdRef>,
112 #[serde(rename = "Memory")]
113 #[serde(default, skip_serializing_if = "Option::is_none")]
114 pub memory: Option<models::odata_v4::IdRef>,
115 #[serde(rename = "MemoryDomains")]
116 #[serde(default, skip_serializing_if = "Option::is_none")]
117 pub memory_domains: Option<models::odata_v4::IdRef>,
118 #[serde(rename = "MinPowerWatts")]
120 #[serde(default, skip_serializing_if = "Option::is_none")]
121 pub min_power_watts: Option<f64>,
122 #[serde(rename = "Model")]
124 #[serde(default, skip_serializing_if = "Option::is_none")]
125 pub model: Option<String>,
126 #[serde(rename = "Name")]
127 #[serde(skip_deserializing)]
128 pub name: models::resource::Name,
129 #[serde(rename = "NetworkAdapters")]
130 #[serde(default, skip_serializing_if = "Option::is_none")]
131 pub network_adapters: Option<models::odata_v4::IdRef>,
132 #[serde(rename = "Oem")]
133 #[serde(default, skip_serializing_if = "Option::is_none")]
134 pub oem: Option<models::resource::Oem>,
135 #[serde(rename = "PCIeDevices")]
136 #[serde(default, skip_serializing_if = "Option::is_none")]
137 pub pcie_devices: Option<models::odata_v4::IdRef>,
138 #[serde(rename = "PCIeSlots")]
139 #[serde(default, skip_serializing_if = "Option::is_none")]
140 pub pcie_slots: Option<models::odata_v4::IdRef>,
141 #[serde(rename = "PartNumber")]
143 #[serde(default, skip_serializing_if = "Option::is_none")]
144 pub part_number: Option<String>,
145 #[serde(rename = "PhysicalSecurity")]
146 #[serde(default, skip_serializing_if = "Option::is_none")]
147 pub physical_security: Option<models::chassis::v1_23_0::PhysicalSecurity>,
148 #[serde(rename = "Power")]
149 #[serde(default, skip_serializing_if = "Option::is_none")]
150 pub power: Option<models::odata_v4::IdRef>,
151 #[serde(rename = "PowerState")]
152 #[serde(default, skip_serializing_if = "Option::is_none")]
153 pub power_state: Option<models::resource::PowerState>,
154 #[serde(rename = "PowerSubsystem")]
155 #[serde(default, skip_serializing_if = "Option::is_none")]
156 pub power_subsystem: Option<models::odata_v4::IdRef>,
157 #[serde(rename = "PoweredByParent")]
159 #[serde(default, skip_serializing_if = "Option::is_none")]
160 pub powered_by_parent: Option<bool>,
161 #[serde(rename = "Processors")]
162 #[serde(default, skip_serializing_if = "Option::is_none")]
163 pub processors: Option<models::odata_v4::IdRef>,
164 #[serde(rename = "Replaceable")]
166 #[serde(default, skip_serializing_if = "Option::is_none")]
167 pub replaceable: Option<bool>,
168 #[serde(rename = "SKU")]
170 #[serde(default, skip_serializing_if = "Option::is_none")]
171 pub sku: Option<String>,
172 #[serde(rename = "Sensors")]
173 #[serde(default, skip_serializing_if = "Option::is_none")]
174 pub sensors: Option<models::odata_v4::IdRef>,
175 #[serde(rename = "SerialNumber")]
177 #[serde(default, skip_serializing_if = "Option::is_none")]
178 pub serial_number: Option<String>,
179 #[serde(rename = "SparePartNumber")]
181 #[serde(default, skip_serializing_if = "Option::is_none")]
182 pub spare_part_number: Option<String>,
183 #[serde(rename = "Status")]
184 #[serde(default, skip_serializing_if = "Option::is_none")]
185 pub status: Option<models::resource::Status>,
186 #[serde(rename = "Thermal")]
187 #[serde(default, skip_serializing_if = "Option::is_none")]
188 pub thermal: Option<models::odata_v4::IdRef>,
189 #[serde(rename = "ThermalDirection")]
190 #[serde(default, skip_serializing_if = "Option::is_none")]
191 pub thermal_direction: Option<models::chassis::v1_23_0::ThermalDirection>,
192 #[serde(rename = "ThermalManagedByParent")]
194 #[serde(default, skip_serializing_if = "Option::is_none")]
195 pub thermal_managed_by_parent: Option<bool>,
196 #[serde(rename = "ThermalSubsystem")]
197 #[serde(default, skip_serializing_if = "Option::is_none")]
198 pub thermal_subsystem: Option<models::odata_v4::IdRef>,
199 #[serde(rename = "TrustedComponents")]
200 #[serde(default, skip_serializing_if = "Option::is_none")]
201 pub trusted_components: Option<models::odata_v4::IdRef>,
202 #[serde(rename = "UUID")]
203 #[serde(default, skip_serializing_if = "Option::is_none")]
204 pub uuid: Option<models::resource::UUID>,
205 #[serde(rename = "Version")]
207 #[serde(default, skip_serializing_if = "Option::is_none")]
208 pub version: Option<String>,
209 #[serde(rename = "WeightKg")]
211 #[serde(default, skip_serializing_if = "Option::is_none")]
212 pub weight_kg: Option<f64>,
213 #[serde(rename = "WidthMm")]
215 #[serde(default, skip_serializing_if = "Option::is_none")]
216 pub width_mm: Option<f64>,
217}
218
219impl crate::Metadata<'static> for Chassis {
220 const JSON_SCHEMA: &'static str = "Chassis.v1_23_0.json";
221}