aws_sdk_organizations/protocol_serde/
shape_list_aws_service_access_for_organization.rs1#[allow(clippy::unnecessary_wraps)]
3pub fn de_list_aws_service_access_for_organization_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::list_aws_service_access_for_organization::ListAwsServiceAccessForOrganizationOutput,
9 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError,
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::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::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::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled(generic)),
19 };
20
21 let _error_message = generic.message().map(|msg| msg.to_owned());
22 Err(match error_code {
23 "AccessDeniedException" => {
24 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::AccessDeniedException({
25 #[allow(unused_mut)]
26 let mut tmp = {
27 #[allow(unused_mut)]
28 let mut output = crate::types::error::builders::AccessDeniedExceptionBuilder::default();
29 output = crate::protocol_serde::shape_access_denied_exception::de_access_denied_exception_json_err(_response_body, output)
30 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
31 let output = output.meta(generic);
32 output.build()
33 };
34 if tmp.message.is_none() {
35 tmp.message = _error_message;
36 }
37 tmp
38 })
39 }
40 "AWSOrganizationsNotInUseException" => {
41 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::AwsOrganizationsNotInUseException({
42 #[allow(unused_mut)]
43 let mut tmp = {
44 #[allow(unused_mut)]
45 let mut output = crate::types::error::builders::AwsOrganizationsNotInUseExceptionBuilder::default();
46 output = crate::protocol_serde::shape_aws_organizations_not_in_use_exception::de_aws_organizations_not_in_use_exception_json_err(
47 _response_body,
48 output,
49 )
50 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
51 let output = output.meta(generic);
52 output.build()
53 };
54 if tmp.message.is_none() {
55 tmp.message = _error_message;
56 }
57 tmp
58 })
59 }
60 "ConstraintViolationException" => {
61 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::ConstraintViolationException({
62 #[allow(unused_mut)]
63 let mut tmp = {
64 #[allow(unused_mut)]
65 let mut output = crate::types::error::builders::ConstraintViolationExceptionBuilder::default();
66 output = crate::protocol_serde::shape_constraint_violation_exception::de_constraint_violation_exception_json_err(
67 _response_body,
68 output,
69 )
70 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
71 let output = output.meta(generic);
72 output.build()
73 };
74 if tmp.message.is_none() {
75 tmp.message = _error_message;
76 }
77 tmp
78 })
79 }
80 "InvalidInputException" => {
81 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::InvalidInputException({
82 #[allow(unused_mut)]
83 let mut tmp = {
84 #[allow(unused_mut)]
85 let mut output = crate::types::error::builders::InvalidInputExceptionBuilder::default();
86 output = crate::protocol_serde::shape_invalid_input_exception::de_invalid_input_exception_json_err(_response_body, output)
87 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
88 let output = output.meta(generic);
89 output.build()
90 };
91 if tmp.message.is_none() {
92 tmp.message = _error_message;
93 }
94 tmp
95 })
96 }
97 "ServiceException" => {
98 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::ServiceException({
99 #[allow(unused_mut)]
100 let mut tmp = {
101 #[allow(unused_mut)]
102 let mut output = crate::types::error::builders::ServiceExceptionBuilder::default();
103 output = crate::protocol_serde::shape_service_exception::de_service_exception_json_err(_response_body, output)
104 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
105 let output = output.meta(generic);
106 output.build()
107 };
108 if tmp.message.is_none() {
109 tmp.message = _error_message;
110 }
111 tmp
112 })
113 }
114 "TooManyRequestsException" => {
115 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::TooManyRequestsException({
116 #[allow(unused_mut)]
117 let mut tmp = {
118 #[allow(unused_mut)]
119 let mut output = crate::types::error::builders::TooManyRequestsExceptionBuilder::default();
120 output =
121 crate::protocol_serde::shape_too_many_requests_exception::de_too_many_requests_exception_json_err(_response_body, output)
122 .map_err(
123 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled,
124 )?;
125 let output = output.meta(generic);
126 output.build()
127 };
128 if tmp.message.is_none() {
129 tmp.message = _error_message;
130 }
131 tmp
132 })
133 }
134 "UnsupportedAPIEndpointException" => {
135 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::UnsupportedApiEndpointException({
136 #[allow(unused_mut)]
137 let mut tmp = {
138 #[allow(unused_mut)]
139 let mut output = crate::types::error::builders::UnsupportedApiEndpointExceptionBuilder::default();
140 output = crate::protocol_serde::shape_unsupported_api_endpoint_exception::de_unsupported_api_endpoint_exception_json_err(
141 _response_body,
142 output,
143 )
144 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
145 let output = output.meta(generic);
146 output.build()
147 };
148 if tmp.message.is_none() {
149 tmp.message = _error_message;
150 }
151 tmp
152 })
153 }
154 _ => crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::generic(generic),
155 })
156}
157
158#[allow(clippy::unnecessary_wraps)]
159pub fn de_list_aws_service_access_for_organization_http_response(
160 _response_status: u16,
161 _response_headers: &::aws_smithy_runtime_api::http::Headers,
162 _response_body: &[u8],
163) -> std::result::Result<
164 crate::operation::list_aws_service_access_for_organization::ListAwsServiceAccessForOrganizationOutput,
165 crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError,
166> {
167 Ok({
168 #[allow(unused_mut)]
169 let mut output =
170 crate::operation::list_aws_service_access_for_organization::builders::ListAwsServiceAccessForOrganizationOutputBuilder::default();
171 output = crate::protocol_serde::shape_list_aws_service_access_for_organization::de_list_aws_service_access_for_organization(
172 _response_body,
173 output,
174 )
175 .map_err(crate::operation::list_aws_service_access_for_organization::ListAWSServiceAccessForOrganizationError::unhandled)?;
176 output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
177 output.build()
178 })
179}
180
181pub fn ser_list_aws_service_access_for_organization_input(
182 input: &crate::operation::list_aws_service_access_for_organization::ListAwsServiceAccessForOrganizationInput,
183) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
184 let mut out = String::new();
185 let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
186 crate::protocol_serde::shape_list_aws_service_access_for_organization_input::ser_list_aws_service_access_for_organization_input_input(
187 &mut object,
188 input,
189 )?;
190 object.finish();
191 Ok(::aws_smithy_types::body::SdkBody::from(out))
192}
193
194pub(crate) fn de_list_aws_service_access_for_organization(
195 value: &[u8],
196 mut builder: crate::operation::list_aws_service_access_for_organization::builders::ListAwsServiceAccessForOrganizationOutputBuilder,
197) -> ::std::result::Result<
198 crate::operation::list_aws_service_access_for_organization::builders::ListAwsServiceAccessForOrganizationOutputBuilder,
199 ::aws_smithy_json::deserialize::error::DeserializeError,
200> {
201 let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
202 let tokens = &mut tokens_owned;
203 ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
204 loop {
205 match tokens.next().transpose()? {
206 Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
207 Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
208 "EnabledServicePrincipals" => {
209 builder = builder.set_enabled_service_principals(
210 crate::protocol_serde::shape_enabled_service_principals::de_enabled_service_principals(tokens)?,
211 );
212 }
213 "NextToken" => {
214 builder = builder.set_next_token(
215 ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
216 .map(|s| s.to_unescaped().map(|u| u.into_owned()))
217 .transpose()?,
218 );
219 }
220 _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
221 },
222 other => {
223 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
224 "expected object key or end object, found: {:?}",
225 other
226 )))
227 }
228 }
229 }
230 if tokens.next().is_some() {
231 return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
232 "found more JSON tokens after completing parsing",
233 ));
234 }
235 Ok(builder)
236}