redfish_codegen/models/pcie_function/v1_5_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    #[serde(rename = "CXLLogicalDevice")]
11    #[serde(default, skip_serializing_if = "Option::is_none")]
12    pub cxl_logical_device: Option<models::odata_v4::IdRef>,
13    /// An array of links to the drives that this PCIe function produces.
14    #[serde(rename = "Drives")]
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub drives: Option<Vec<models::odata_v4::IdRef>>,
17    #[serde(rename = "Drives@odata.count")]
18    #[serde(default, skip_serializing_if = "Option::is_none")]
19    pub drives_odata_count: Option<models::odata_v4::Count>,
20    /// An array of links to the Ethernet interfaces that this PCIe function produces.
21    #[serde(rename = "EthernetInterfaces")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub ethernet_interfaces: Option<Vec<models::odata_v4::IdRef>>,
24    #[serde(rename = "EthernetInterfaces@odata.count")]
25    #[serde(default, skip_serializing_if = "Option::is_none")]
26    pub ethernet_interfaces_odata_count: Option<models::odata_v4::Count>,
27    /// An array of links to the memory domains that the PCIe function produces.
28    #[serde(rename = "MemoryDomains")]
29    #[serde(default, skip_serializing_if = "Option::is_none")]
30    pub memory_domains: Option<Vec<models::odata_v4::IdRef>>,
31    #[serde(rename = "MemoryDomains@odata.count")]
32    #[serde(default, skip_serializing_if = "Option::is_none")]
33    pub memory_domains_odata_count: Option<models::odata_v4::Count>,
34    /// An array of links to the network device functions that the PCIe function produces.
35    #[serde(rename = "NetworkDeviceFunctions")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub network_device_functions: Option<Vec<models::odata_v4::IdRef>>,
38    #[serde(rename = "NetworkDeviceFunctions@odata.count")]
39    #[serde(default, skip_serializing_if = "Option::is_none")]
40    pub network_device_functions_odata_count: Option<models::odata_v4::Count>,
41    #[serde(rename = "Oem")]
42    #[serde(default, skip_serializing_if = "Option::is_none")]
43    pub oem: Option<models::resource::Oem>,
44    #[serde(rename = "PCIeDevice")]
45    #[serde(default, skip_serializing_if = "Option::is_none")]
46    pub pcie_device: Option<models::odata_v4::IdRef>,
47    #[serde(rename = "Processor")]
48    #[serde(default, skip_serializing_if = "Option::is_none")]
49    pub processor: Option<models::odata_v4::IdRef>,
50    /// An array of links to the storage controllers that this PCIe function produces.
51    #[serde(rename = "StorageControllers")]
52    #[serde(default, skip_serializing_if = "Option::is_none")]
53    pub storage_controllers: Option<Vec<models::storage::StorageController>>,
54    #[serde(rename = "StorageControllers@odata.count")]
55    #[serde(default, skip_serializing_if = "Option::is_none")]
56    pub storage_controllers_odata_count: Option<models::odata_v4::Count>,
57}
58
59impl crate::Metadata<'static> for Links {
60    const JSON_SCHEMA: &'static str = "PCIeFunction.v1_5_0.json";
61}