aws_sdk_appstream/protocol_serde/
shape_associate_app_block_builder_app_block.rs1#[allow(clippy::unnecessary_wraps)]
3pub fn de_associate_app_block_builder_app_block_http_error(
4 _response_status: u16,
5 _response_headers: &::aws_smithy_runtime_api::http::Headers,
6 _response_body: &[u8],
7) -> std::result::Result<
8 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockOutput,
9 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError,
10> {
11 #[allow(unused_mut)]
12 let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
13 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
14 generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
15 let generic = generic_builder.build();
16 let error_code = match generic.code() {
17 Some(code) => code,
18 None => return Err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled(generic)),
19 };
20
21 let _error_message = generic.message().map(|msg| msg.to_owned());
22 Err(match error_code {
23 "ConcurrentModificationException" => {
24 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::ConcurrentModificationException({
25 #[allow(unused_mut)]
26 let mut tmp = {
27 #[allow(unused_mut)]
28 let mut output = crate::types::error::builders::ConcurrentModificationExceptionBuilder::default();
29 output = crate::protocol_serde::shape_concurrent_modification_exception::de_concurrent_modification_exception_json_err(
30 _response_body,
31 output,
32 )
33 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
34 let output = output.meta(generic);
35 output.build()
36 };
37 if tmp.message.is_none() {
38 tmp.message = _error_message;
39 }
40 tmp
41 })
42 }
43 "InvalidParameterCombinationException" => {
44 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::InvalidParameterCombinationException({
45 #[allow(unused_mut)]
46 let mut tmp = {
47 #[allow(unused_mut)]
48 let mut output = crate::types::error::builders::InvalidParameterCombinationExceptionBuilder::default();
49 output =
50 crate::protocol_serde::shape_invalid_parameter_combination_exception::de_invalid_parameter_combination_exception_json_err(
51 _response_body,
52 output,
53 )
54 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
55 let output = output.meta(generic);
56 output.build()
57 };
58 if tmp.message.is_none() {
59 tmp.message = _error_message;
60 }
61 tmp
62 })
63 }
64 "LimitExceededException" => {
65 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::LimitExceededException({
66 #[allow(unused_mut)]
67 let mut tmp = {
68 #[allow(unused_mut)]
69 let mut output = crate::types::error::builders::LimitExceededExceptionBuilder::default();
70 output = crate::protocol_serde::shape_limit_exceeded_exception::de_limit_exceeded_exception_json_err(_response_body, output)
71 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
72 let output = output.meta(generic);
73 output.build()
74 };
75 if tmp.message.is_none() {
76 tmp.message = _error_message;
77 }
78 tmp
79 })
80 }
81 "OperationNotPermittedException" => {
82 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::OperationNotPermittedException({
83 #[allow(unused_mut)]
84 let mut tmp = {
85 #[allow(unused_mut)]
86 let mut output = crate::types::error::builders::OperationNotPermittedExceptionBuilder::default();
87 output = crate::protocol_serde::shape_operation_not_permitted_exception::de_operation_not_permitted_exception_json_err(
88 _response_body,
89 output,
90 )
91 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
92 let output = output.meta(generic);
93 output.build()
94 };
95 if tmp.message.is_none() {
96 tmp.message = _error_message;
97 }
98 tmp
99 })
100 }
101 "ResourceNotFoundException" => {
102 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::ResourceNotFoundException({
103 #[allow(unused_mut)]
104 let mut tmp = {
105 #[allow(unused_mut)]
106 let mut output = crate::types::error::builders::ResourceNotFoundExceptionBuilder::default();
107 output =
108 crate::protocol_serde::shape_resource_not_found_exception::de_resource_not_found_exception_json_err(_response_body, output)
109 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
110 let output = output.meta(generic);
111 output.build()
112 };
113 if tmp.message.is_none() {
114 tmp.message = _error_message;
115 }
116 tmp
117 })
118 }
119 _ => crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::generic(generic),
120 })
121}
122
123#[allow(clippy::unnecessary_wraps)]
124pub fn de_associate_app_block_builder_app_block_http_response(
125 _response_status: u16,
126 _response_headers: &::aws_smithy_runtime_api::http::Headers,
127 _response_body: &[u8],
128) -> std::result::Result<
129 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockOutput,
130 crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError,
131> {
132 Ok({
133 #[allow(unused_mut)]
134 let mut output = crate::operation::associate_app_block_builder_app_block::builders::AssociateAppBlockBuilderAppBlockOutputBuilder::default();
135 output = crate::protocol_serde::shape_associate_app_block_builder_app_block::de_associate_app_block_builder_app_block(_response_body, output)
136 .map_err(crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockError::unhandled)?;
137 output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
138 output.build()
139 })
140}
141
142pub fn ser_associate_app_block_builder_app_block_input(
143 input: &crate::operation::associate_app_block_builder_app_block::AssociateAppBlockBuilderAppBlockInput,
144) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
145 let mut out = String::new();
146 let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
147 crate::protocol_serde::shape_associate_app_block_builder_app_block_input::ser_associate_app_block_builder_app_block_input_input(
148 &mut object,
149 input,
150 )?;
151 object.finish();
152 Ok(::aws_smithy_types::body::SdkBody::from(out))
153}
154
155pub(crate) fn de_associate_app_block_builder_app_block(
156 value: &[u8],
157 mut builder: crate::operation::associate_app_block_builder_app_block::builders::AssociateAppBlockBuilderAppBlockOutputBuilder,
158) -> ::std::result::Result<
159 crate::operation::associate_app_block_builder_app_block::builders::AssociateAppBlockBuilderAppBlockOutputBuilder,
160 ::aws_smithy_json::deserialize::error::DeserializeError,
161> {
162 let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
163 let tokens = &mut tokens_owned;
164 ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
165 loop {
166 match tokens.next().transpose()? {
167 Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
168 Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
169 "AppBlockBuilderAppBlockAssociation" => {
170 builder = builder.set_app_block_builder_app_block_association(
171 crate::protocol_serde::shape_app_block_builder_app_block_association::de_app_block_builder_app_block_association(tokens)?,
172 );
173 }
174 _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
175 },
176 other => {
177 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
178 "expected object key or end object, found: {:?}",
179 other
180 )))
181 }
182 }
183 }
184 if tokens.next().is_some() {
185 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
186 "found more JSON tokens after completing parsing",
187 ));
188 }
189 Ok(builder)
190}