ocpp_types/v201/
reset_response.rs1use super::common::*;
5#[derive(Debug, Clone, PartialEq, Eq)]
6#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
7pub struct ResetResponse<CustomDataType = crate::NoCustomData> {
8 #[cfg_attr(feature = "serde", serde(rename = "customData"))]
9 #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))]
10 pub custom_data: Option<CustomDataType>,
11 pub status: ResetStatusEnum,
12 #[cfg_attr(feature = "serde", serde(rename = "statusInfo"))]
13 #[cfg_attr(feature = "serde", serde(skip_serializing_if = "Option::is_none"))]
14 pub status_info: Option<StatusInfo<CustomDataType>>,
15}
16impl<CustomDataType> crate::Action for ResetResponse<CustomDataType> {
17 const ACTION: &'static str = "Reset";
18}
19#[cfg(feature = "validate")]
20impl<CustomDataType> crate::validate::Validate for ResetResponse<CustomDataType> {
21 fn validate(&self) -> Result<(), crate::validate::ValidationError> {
22 crate::validate::Validate::validate(&self.status)
23 .map_err(|error| error.in_field("status"))?;
24 if let Some(value) = &self.status_info {
25 crate::validate::Validate::validate(value)
26 .map_err(|error| error.in_field("statusInfo"))?;
27 }
28 Ok(())
29 }
30}