redfish_codegen/models/computer_system/v1_20_1/
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 chassis that contains this system.
11    #[serde(rename = "Chassis")]
12    #[serde(default, skip_serializing_if = "Option::is_none")]
13    pub chassis: Option<Vec<models::odata_v4::IdRef>>,
14    #[serde(rename = "Chassis@odata.count")]
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub chassis_odata_count: Option<models::odata_v4::Count>,
17    /// An array of links to ComputerSystems that are realized, in whole or in part, from this ComputerSystem.
18    #[serde(rename = "ConsumingComputerSystems")]
19    #[serde(default, skip_serializing_if = "Option::is_none")]
20    pub consuming_computer_systems: Option<Vec<models::odata_v4::IdRef>>,
21    #[serde(rename = "ConsumingComputerSystems@odata.count")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub consuming_computer_systems_odata_count: Option<models::odata_v4::Count>,
24    /// An array of links to resources or objects that that cool this computer system.  Normally, the link is for either a chassis or a specific set of fans.
25    #[serde(rename = "CooledBy")]
26    #[serde(default, skip_serializing_if = "Option::is_none")]
27    pub cooled_by: Option<Vec<models::odata_v4::IdRef>>,
28    #[serde(rename = "CooledBy@odata.count")]
29    #[serde(default, skip_serializing_if = "Option::is_none")]
30    pub cooled_by_odata_count: Option<models::odata_v4::Count>,
31    /// An array of links to the endpoints that connect to this system.
32    #[serde(rename = "Endpoints")]
33    #[serde(default, skip_serializing_if = "Option::is_none")]
34    pub endpoints: Option<Vec<models::odata_v4::IdRef>>,
35    #[serde(rename = "Endpoints@odata.count")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub endpoints_odata_count: Option<models::odata_v4::Count>,
38    /// An array of links to the managers responsible for this system.
39    #[serde(rename = "ManagedBy")]
40    #[serde(default, skip_serializing_if = "Option::is_none")]
41    pub managed_by: Option<Vec<models::odata_v4::IdRef>>,
42    #[serde(rename = "ManagedBy@odata.count")]
43    #[serde(default, skip_serializing_if = "Option::is_none")]
44    pub managed_by_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    /// The network device functions to which this system performs offload computation, such as with a SmartNIC.
49    #[serde(rename = "OffloadedNetworkDeviceFunctions")]
50    #[serde(default, skip_serializing_if = "Option::is_none")]
51    pub offloaded_network_device_functions: Option<Vec<models::odata_v4::IdRef>>,
52    #[serde(rename = "OffloadedNetworkDeviceFunctions@odata.count")]
53    #[serde(default, skip_serializing_if = "Option::is_none")]
54    pub offloaded_network_device_functions_odata_count: Option<models::odata_v4::Count>,
55    /// An array of links to resources or objects that power this computer system.  Normally, the link is for either a chassis or a specific set of power supplies.
56    #[serde(rename = "PoweredBy")]
57    #[serde(default, skip_serializing_if = "Option::is_none")]
58    pub powered_by: Option<Vec<models::odata_v4::IdRef>>,
59    #[serde(rename = "PoweredBy@odata.count")]
60    #[serde(default, skip_serializing_if = "Option::is_none")]
61    pub powered_by_odata_count: Option<models::odata_v4::Count>,
62    /// An array of links to the resource blocks that are used in this computer system.
63    #[serde(rename = "ResourceBlocks")]
64    #[serde(default, skip_serializing_if = "Option::is_none")]
65    pub resource_blocks: Option<Vec<models::odata_v4::IdRef>>,
66    #[serde(rename = "ResourceBlocks@odata.count")]
67    #[serde(default, skip_serializing_if = "Option::is_none")]
68    pub resource_blocks_odata_count: Option<models::odata_v4::Count>,
69    /// An array of links to ComputerSystems that contribute, in whole or in part, to the implementation of this ComputerSystem.
70    #[serde(rename = "SupplyingComputerSystems")]
71    #[serde(default, skip_serializing_if = "Option::is_none")]
72    pub supplying_computer_systems: Option<Vec<models::odata_v4::IdRef>>,
73    #[serde(rename = "SupplyingComputerSystems@odata.count")]
74    #[serde(default, skip_serializing_if = "Option::is_none")]
75    pub supplying_computer_systems_odata_count: Option<models::odata_v4::Count>,
76    /// An array of links to the trusted components for this system.
77    #[serde(rename = "TrustedComponents")]
78    #[serde(default, skip_serializing_if = "Option::is_none")]
79    pub trusted_components: Option<Vec<models::odata_v4::IdRef>>,
80    #[serde(rename = "TrustedComponents@odata.count")]
81    #[serde(default, skip_serializing_if = "Option::is_none")]
82    pub trusted_components_odata_count: Option<models::odata_v4::Count>,
83}
84
85impl crate::Metadata<'static> for Links {
86    const JSON_SCHEMA: &'static str = "ComputerSystem.v1_20_1.json";
87}