redfish_codegen/models/network_device_function/v1_9_0/
network_device_function.rs1use crate::models;
4
5#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct NetworkDeviceFunction {
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(\"#NetworkDeviceFunction.v1_9_0.NetworkDeviceFunction\".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::network_device_function::v1_9_0::Actions>,
28 #[serde(rename = "AllowDeny")]
29 #[serde(default, skip_serializing_if = "Option::is_none")]
30 pub allow_deny: Option<models::odata_v4::IdRef>,
31 #[serde(rename = "AssignablePhysicalNetworkPorts")]
33 #[serde(default, skip_serializing_if = "Option::is_none")]
34 pub assignable_physical_network_ports: Option<Vec<models::odata_v4::IdRef>>,
35 #[serde(rename = "AssignablePhysicalNetworkPorts@odata.count")]
36 #[serde(default, skip_serializing_if = "Option::is_none")]
37 pub assignable_physical_network_ports_odata_count: Option<models::odata_v4::Count>,
38 #[serde(rename = "AssignablePhysicalPorts")]
40 #[serde(default, skip_serializing_if = "Option::is_none")]
41 pub assignable_physical_ports: Option<Vec<models::odata_v4::IdRef>>,
42 #[serde(rename = "AssignablePhysicalPorts@odata.count")]
43 #[serde(default, skip_serializing_if = "Option::is_none")]
44 pub assignable_physical_ports_odata_count: Option<models::odata_v4::Count>,
45 #[serde(rename = "BootMode")]
46 #[serde(default, skip_serializing_if = "Option::is_none")]
47 pub boot_mode: Option<models::network_device_function::v1_9_0::BootMode>,
48 #[serde(rename = "Description")]
49 #[serde(default, skip_serializing_if = "Option::is_none")]
50 pub description: Option<models::resource::Description>,
51 #[serde(rename = "DeviceEnabled")]
53 #[serde(default, skip_serializing_if = "Option::is_none")]
54 pub device_enabled: Option<bool>,
55 #[serde(rename = "Ethernet")]
56 #[serde(default, skip_serializing_if = "Option::is_none")]
57 pub ethernet: Option<models::network_device_function::v1_9_0::Ethernet>,
58 #[serde(rename = "FibreChannel")]
59 #[serde(default, skip_serializing_if = "Option::is_none")]
60 pub fibre_channel: Option<models::network_device_function::v1_9_0::FibreChannel>,
61 #[serde(rename = "HTTPBoot")]
62 #[serde(default, skip_serializing_if = "Option::is_none")]
63 pub http_boot: Option<models::network_device_function::v1_9_0::HTTPBoot>,
64 #[serde(rename = "Id")]
65 #[serde(skip_deserializing)]
66 pub id: models::resource::Id,
67 #[serde(rename = "InfiniBand")]
68 #[serde(default, skip_serializing_if = "Option::is_none")]
69 pub infini_band: Option<models::network_device_function::v1_9_0::InfiniBand>,
70 #[serde(rename = "Limits")]
72 #[serde(default, skip_serializing_if = "Option::is_none")]
73 pub limits: Option<Vec<models::network_device_function::v1_9_0::Limit>>,
74 #[serde(rename = "Links")]
75 #[serde(default, skip_serializing_if = "Option::is_none")]
76 pub links: Option<models::network_device_function::v1_9_0::Links>,
77 #[serde(rename = "MaxVirtualFunctions")]
79 #[serde(default, skip_serializing_if = "Option::is_none")]
80 pub max_virtual_functions: Option<i64>,
81 #[serde(rename = "Metrics")]
82 #[serde(default, skip_serializing_if = "Option::is_none")]
83 pub metrics: Option<models::odata_v4::IdRef>,
84 #[serde(rename = "Name")]
85 #[serde(skip_deserializing)]
86 pub name: models::resource::Name,
87 #[serde(rename = "NetDevFuncCapabilities")]
89 #[serde(default, skip_serializing_if = "Option::is_none")]
90 pub net_dev_func_capabilities: Option<Vec<models::network_device_function::v1_9_0::NetworkDeviceTechnology>>,
91 #[serde(rename = "NetDevFuncType")]
92 #[serde(default, skip_serializing_if = "Option::is_none")]
93 pub net_dev_func_type: Option<models::network_device_function::v1_9_0::NetworkDeviceTechnology>,
94 #[serde(rename = "Oem")]
95 #[serde(default, skip_serializing_if = "Option::is_none")]
96 pub oem: Option<models::resource::Oem>,
97 #[serde(rename = "PhysicalNetworkPortAssignment")]
98 #[serde(default, skip_serializing_if = "Option::is_none")]
99 pub physical_network_port_assignment: Option<models::odata_v4::IdRef>,
100 #[serde(rename = "PhysicalPortAssignment")]
101 #[serde(default, skip_serializing_if = "Option::is_none")]
102 pub physical_port_assignment: Option<models::odata_v4::IdRef>,
103 #[serde(rename = "SAVIEnabled")]
105 #[serde(default, skip_serializing_if = "Option::is_none")]
106 pub savi_enabled: Option<bool>,
107 #[serde(rename = "Status")]
108 #[serde(default, skip_serializing_if = "Option::is_none")]
109 pub status: Option<models::resource::Status>,
110 #[serde(rename = "VirtualFunctionsEnabled")]
112 #[serde(default, skip_serializing_if = "Option::is_none")]
113 pub virtual_functions_enabled: Option<bool>,
114 #[serde(rename = "iSCSIBoot")]
115 #[serde(default, skip_serializing_if = "Option::is_none")]
116 pub iscsi_boot: Option<models::network_device_function::v1_9_0::IscsiBoot>,
117}
118
119impl crate::Metadata<'static> for NetworkDeviceFunction {
120 const JSON_SCHEMA: &'static str = "NetworkDeviceFunction.v1_9_0.json";
121}