aws_sdk_ec2/protocol_serde/
shape_target_capacity_specification.rs1#[allow(clippy::needless_question_mark)]
3pub fn de_target_capacity_specification(
4 decoder: &mut ::aws_smithy_xml::decode::ScopedDecoder,
5) -> ::std::result::Result<crate::types::TargetCapacitySpecification, ::aws_smithy_xml::decode::XmlDecodeError> {
6 #[allow(unused_mut)]
7 let mut builder = crate::types::TargetCapacitySpecification::builder();
8 while let Some(mut tag) = decoder.next_tag() {
9 match tag.start_el() {
10 s if s.matches("totalTargetCapacity") => {
11 let var_1 =
12 Some(
13 {
14 <i32 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 (integer: `com.amazonaws.ec2#Integer`)"))
18 }
19 ?
20 )
21 ;
22 builder = builder.set_total_target_capacity(var_1);
23 }
24 ,
25 s if s.matches("onDemandTargetCapacity") => {
26 let var_2 =
27 Some(
28 {
29 <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
30 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
31 )
32 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
33 }
34 ?
35 )
36 ;
37 builder = builder.set_on_demand_target_capacity(var_2);
38 }
39 ,
40 s if s.matches("spotTargetCapacity") => {
41 let var_3 =
42 Some(
43 {
44 <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
45 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
46 )
47 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.ec2#Integer`)"))
48 }
49 ?
50 )
51 ;
52 builder = builder.set_spot_target_capacity(var_3);
53 }
54 ,
55 s if s.matches("defaultTargetCapacityType") => {
56 let var_4 =
57 Some(
58 Result::<crate::types::DefaultTargetCapacityType, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
59 crate::types::DefaultTargetCapacityType::from(
60 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
61 )
62 )
63 ?
64 )
65 ;
66 builder = builder.set_default_target_capacity_type(var_4);
67 }
68 ,
69 s if s.matches("targetCapacityUnitType") => {
70 let var_5 =
71 Some(
72 Result::<crate::types::TargetCapacityUnitType, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
73 crate::types::TargetCapacityUnitType::from(
74 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
75 )
76 )
77 ?
78 )
79 ;
80 builder = builder.set_target_capacity_unit_type(var_5);
81 }
82 ,
83 _ => {}
84 }
85 }
86 Ok(builder.build())
87}