redfish_codegen/models/outlet/v1_4_1/
outlet.rs

1// Generated by redfish-codegen. Do not modify.
2
3use crate::models;
4
5/// The Outlet schema contains definition for an electrical outlet.
6#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct Outlet {
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(\"#Outlet.v1_4_1.Outlet\".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::outlet::v1_4_1::Actions>,
28    /// Indicates whether the configuration is locked.
29    #[serde(rename = "ConfigurationLocked")]
30    #[serde(default, skip_serializing_if = "Option::is_none")]
31    pub configuration_locked: Option<bool>,
32    #[serde(rename = "CurrentAmps")]
33    #[serde(default, skip_serializing_if = "Option::is_none")]
34    pub current_amps: Option<models::sensor::SensorCurrentExcerpt>,
35    #[serde(rename = "Description")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub description: Option<models::resource::Description>,
38    /// An array of names of downstream devices that are powered by this outlet.
39    #[serde(rename = "ElectricalConsumerNames")]
40    #[serde(default, skip_serializing_if = "Option::is_none")]
41    pub electrical_consumer_names: Option<Vec<String>>,
42    #[serde(rename = "ElectricalContext")]
43    #[serde(default, skip_serializing_if = "Option::is_none")]
44    pub electrical_context: Option<models::sensor::ElectricalContext>,
45    #[serde(rename = "EnergykWh")]
46    #[serde(default, skip_serializing_if = "Option::is_none")]
47    pub energy_kwh: Option<models::sensor::SensorEnergykWhExcerpt>,
48    #[serde(rename = "FrequencyHz")]
49    #[serde(default, skip_serializing_if = "Option::is_none")]
50    pub frequency_hz: Option<models::sensor::SensorExcerpt>,
51    #[serde(rename = "Id")]
52    #[serde(skip_deserializing)]
53    pub id: models::resource::Id,
54    #[serde(rename = "IndicatorLED")]
55    #[serde(default, skip_serializing_if = "Option::is_none")]
56    pub indicator_led: Option<models::resource::IndicatorLED>,
57    #[serde(rename = "Links")]
58    #[serde(default, skip_serializing_if = "Option::is_none")]
59    pub links: Option<models::outlet::v1_4_1::Links>,
60    /// An indicator allowing an operator to physically locate this resource.
61    #[serde(rename = "LocationIndicatorActive")]
62    #[serde(default, skip_serializing_if = "Option::is_none")]
63    pub location_indicator_active: Option<bool>,
64    #[serde(rename = "Name")]
65    #[serde(skip_deserializing)]
66    pub name: models::resource::Name,
67    #[serde(rename = "NominalVoltage")]
68    #[serde(default, skip_serializing_if = "Option::is_none")]
69    pub nominal_voltage: Option<models::circuit::NominalVoltageType>,
70    #[serde(rename = "Oem")]
71    #[serde(default, skip_serializing_if = "Option::is_none")]
72    pub oem: Option<models::resource::Oem>,
73    #[serde(rename = "OutletType")]
74    #[serde(default, skip_serializing_if = "Option::is_none")]
75    pub outlet_type: Option<models::outlet::ReceptacleType>,
76    #[serde(rename = "PhaseWiringType")]
77    #[serde(default, skip_serializing_if = "Option::is_none")]
78    pub phase_wiring_type: Option<models::circuit::PhaseWiringType>,
79    #[serde(rename = "PolyPhaseCurrentAmps")]
80    #[serde(default, skip_serializing_if = "Option::is_none")]
81    pub poly_phase_current_amps: Option<models::outlet::v1_4_1::CurrentSensors>,
82    #[serde(rename = "PolyPhaseVoltage")]
83    #[serde(default, skip_serializing_if = "Option::is_none")]
84    pub poly_phase_voltage: Option<models::outlet::v1_4_1::VoltageSensors>,
85    /// Indicates whether power control requests are locked.
86    #[serde(rename = "PowerControlLocked")]
87    #[serde(default, skip_serializing_if = "Option::is_none")]
88    pub power_control_locked: Option<bool>,
89    /// The number of seconds to delay power on after a PowerControl action to cycle power.  Zero seconds indicates no delay.
90    #[serde(rename = "PowerCycleDelaySeconds")]
91    #[serde(default, skip_serializing_if = "Option::is_none")]
92    pub power_cycle_delay_seconds: Option<f64>,
93    /// Indicates if the outlet can be powered.
94    #[serde(rename = "PowerEnabled")]
95    #[serde(default, skip_serializing_if = "Option::is_none")]
96    pub power_enabled: Option<bool>,
97    #[serde(rename = "PowerLoadPercent")]
98    #[serde(default, skip_serializing_if = "Option::is_none")]
99    pub power_load_percent: Option<models::sensor::SensorExcerpt>,
100    /// The number of seconds to delay power off after a PowerControl action.  Zero seconds indicates no delay to power off.
101    #[serde(rename = "PowerOffDelaySeconds")]
102    #[serde(default, skip_serializing_if = "Option::is_none")]
103    pub power_off_delay_seconds: Option<f64>,
104    /// The number of seconds to delay power up after a power cycle or a PowerControl action.  Zero seconds indicates no delay to power up.
105    #[serde(rename = "PowerOnDelaySeconds")]
106    #[serde(default, skip_serializing_if = "Option::is_none")]
107    pub power_on_delay_seconds: Option<f64>,
108    /// The number of seconds to delay power on after power has been restored.  Zero seconds indicates no delay.
109    #[serde(rename = "PowerRestoreDelaySeconds")]
110    #[serde(default, skip_serializing_if = "Option::is_none")]
111    pub power_restore_delay_seconds: Option<f64>,
112    #[serde(rename = "PowerRestorePolicy")]
113    #[serde(default, skip_serializing_if = "Option::is_none")]
114    pub power_restore_policy: Option<models::circuit::PowerRestorePolicyTypes>,
115    #[serde(rename = "PowerState")]
116    #[serde(default, skip_serializing_if = "Option::is_none")]
117    pub power_state: Option<models::resource::PowerState>,
118    /// Indicates whether the power state is undergoing a delayed transition.
119    #[serde(rename = "PowerStateInTransition")]
120    #[serde(default, skip_serializing_if = "Option::is_none")]
121    pub power_state_in_transition: Option<bool>,
122    #[serde(rename = "PowerWatts")]
123    #[serde(default, skip_serializing_if = "Option::is_none")]
124    pub power_watts: Option<models::sensor::SensorPowerExcerpt>,
125    /// The rated maximum current allowed for this outlet.
126    #[serde(rename = "RatedCurrentAmps")]
127    #[serde(default, skip_serializing_if = "Option::is_none")]
128    pub rated_current_amps: Option<f64>,
129    #[serde(rename = "Status")]
130    #[serde(default, skip_serializing_if = "Option::is_none")]
131    pub status: Option<models::resource::Status>,
132    /// A user-assigned label.
133    #[serde(rename = "UserLabel")]
134    #[serde(default, skip_serializing_if = "Option::is_none")]
135    pub user_label: Option<String>,
136    #[serde(rename = "Voltage")]
137    #[serde(default, skip_serializing_if = "Option::is_none")]
138    pub voltage: Option<models::sensor::SensorVoltageExcerpt>,
139    #[serde(rename = "VoltageType")]
140    #[serde(default, skip_serializing_if = "Option::is_none")]
141    pub voltage_type: Option<models::outlet::v1_4_1::VoltageType>,
142}
143
144impl crate::Metadata<'static> for Outlet {
145    const JSON_SCHEMA: &'static str = "Outlet.v1_4_1.json";
146}