aws_sdk_redshift/protocol_serde/
shape_resize_cluster_message.rs1#[allow(unused_mut)]
3pub fn ser_resize_cluster_message(
4 mut writer: ::aws_smithy_query::QueryValueWriter,
5 input: &crate::types::ResizeClusterMessage,
6) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::SerializationError> {
7 #[allow(unused_mut)]
8 let mut scope_1 = writer.prefix("ClusterIdentifier");
9 if let Some(var_2) = &input.cluster_identifier {
10 scope_1.string(var_2);
11 }
12 #[allow(unused_mut)]
13 let mut scope_3 = writer.prefix("ClusterType");
14 if let Some(var_4) = &input.cluster_type {
15 scope_3.string(var_4);
16 }
17 #[allow(unused_mut)]
18 let mut scope_5 = writer.prefix("NodeType");
19 if let Some(var_6) = &input.node_type {
20 scope_5.string(var_6);
21 }
22 #[allow(unused_mut)]
23 let mut scope_7 = writer.prefix("NumberOfNodes");
24 if let Some(var_8) = &input.number_of_nodes {
25 scope_7.number(
26 #[allow(clippy::useless_conversion)]
27 ::aws_smithy_types::Number::NegInt((*var_8).into()),
28 );
29 }
30 #[allow(unused_mut)]
31 let mut scope_9 = writer.prefix("Classic");
32 if let Some(var_10) = &input.classic {
33 scope_9.boolean(*var_10);
34 }
35 #[allow(unused_mut)]
36 let mut scope_11 = writer.prefix("ReservedNodeId");
37 if let Some(var_12) = &input.reserved_node_id {
38 scope_11.string(var_12);
39 }
40 #[allow(unused_mut)]
41 let mut scope_13 = writer.prefix("TargetReservedNodeOfferingId");
42 if let Some(var_14) = &input.target_reserved_node_offering_id {
43 scope_13.string(var_14);
44 }
45 Ok(())
46}
47
48#[allow(clippy::needless_question_mark)]
49pub fn de_resize_cluster_message(
50 decoder: &mut ::aws_smithy_xml::decode::ScopedDecoder,
51) -> ::std::result::Result<crate::types::ResizeClusterMessage, ::aws_smithy_xml::decode::XmlDecodeError> {
52 #[allow(unused_mut)]
53 let mut builder = crate::types::ResizeClusterMessage::builder();
54 while let Some(mut tag) = decoder.next_tag() {
55 match tag.start_el() {
56 s if s.matches("ClusterIdentifier") => {
57 let var_15 =
58 Some(
59 Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
60 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
61 .into()
62 )
63 ?
64 )
65 ;
66 builder = builder.set_cluster_identifier(var_15);
67 }
68 ,
69 s if s.matches("ClusterType") => {
70 let var_16 =
71 Some(
72 Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
73 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
74 .into()
75 )
76 ?
77 )
78 ;
79 builder = builder.set_cluster_type(var_16);
80 }
81 ,
82 s if s.matches("NodeType") => {
83 let var_17 =
84 Some(
85 Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
86 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
87 .into()
88 )
89 ?
90 )
91 ;
92 builder = builder.set_node_type(var_17);
93 }
94 ,
95 s if s.matches("NumberOfNodes") => {
96 let var_18 =
97 Some(
98 {
99 <i32 as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
100 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
101 )
102 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (integer: `com.amazonaws.redshift#IntegerOptional`)"))
103 }
104 ?
105 )
106 ;
107 builder = builder.set_number_of_nodes(var_18);
108 }
109 ,
110 s if s.matches("Classic") => {
111 let var_19 =
112 Some(
113 {
114 <bool as ::aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
115 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
116 )
117 .map_err(|_|::aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.redshift#BooleanOptional`)"))
118 }
119 ?
120 )
121 ;
122 builder = builder.set_classic(var_19);
123 }
124 ,
125 s if s.matches("ReservedNodeId") => {
126 let var_20 =
127 Some(
128 Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
129 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
130 .into()
131 )
132 ?
133 )
134 ;
135 builder = builder.set_reserved_node_id(var_20);
136 }
137 ,
138 s if s.matches("TargetReservedNodeOfferingId") => {
139 let var_21 =
140 Some(
141 Result::<::std::string::String, ::aws_smithy_xml::decode::XmlDecodeError>::Ok(
142 ::aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
143 .into()
144 )
145 ?
146 )
147 ;
148 builder = builder.set_target_reserved_node_offering_id(var_21);
149 }
150 ,
151 _ => {}
152 }
153 }
154 Ok(crate::serde_util::resize_cluster_message_correct_errors(builder).build())
155}