aws_sdk_s3/protocol_serde/
shape_restore_status.rs
1#[allow(clippy::needless_question_mark)]
3pub fn de_restore_status(
4 decoder: &mut ::aws_smithy_xml::decode::ScopedDecoder,
5) -> ::std::result::Result<crate::types::RestoreStatus, ::aws_smithy_xml::decode::XmlDecodeError> {
6 #[allow(unused_mut)]
7 let mut builder = crate::types::RestoreStatus::builder();
8 while let Some(mut tag) = decoder.next_tag() {
9 match tag.start_el() {
10 s if s.matches("IsRestoreInProgress") => {
11 let var_1 =
12 Some(
13 {
14 <bool as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
15 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
16 )
17 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.s3#IsRestoreInProgress`)"))
18 }
19 ?
20 )
21 ;
22 builder = builder.set_is_restore_in_progress(var_1);
23 }
24 ,
25 s if s.matches("RestoreExpiryDate") => {
26 let var_2 =
27 Some(
28 ::aws_smithy_types::DateTime::from_str(
29 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
30 , ::aws_smithy_types::date_time::Format::DateTimeWithOffset
31 )
32 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (timestamp: `com.amazonaws.s3#RestoreExpiryDate`)"))
33 ?
34 )
35 ;
36 builder = builder.set_restore_expiry_date(var_2);
37 }
38 ,
39 _ => {}
40 }
41 }
42 Ok(builder.build())
43}