aws_sdk_workdocs/protocol_serde/
shape_create_custom_metadata.rs1#[allow(clippy::unnecessary_wraps)]
3pub fn de_create_custom_metadata_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::create_custom_metadata::CreateCustomMetadataOutput,
9 crate::operation::create_custom_metadata::CreateCustomMetadataError,
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::create_custom_metadata::CreateCustomMetadataError::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::create_custom_metadata::CreateCustomMetadataError::unhandled(generic)),
19 };
20
21 let _error_message = generic.message().map(|msg| msg.to_owned());
22 Err(match error_code {
23 "CustomMetadataLimitExceededException" => {
24 crate::operation::create_custom_metadata::CreateCustomMetadataError::CustomMetadataLimitExceededException({
25 #[allow(unused_mut)]
26 let mut tmp = {
27 #[allow(unused_mut)]
28 let mut output = crate::types::error::builders::CustomMetadataLimitExceededExceptionBuilder::default();
29 output =
30 crate::protocol_serde::shape_custom_metadata_limit_exceeded_exception::de_custom_metadata_limit_exceeded_exception_json_err(
31 _response_body,
32 output,
33 )
34 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
35 let output = output.meta(generic);
36 output.build()
37 };
38 if tmp.message.is_none() {
39 tmp.message = _error_message;
40 }
41 tmp
42 })
43 }
44 "EntityNotExistsException" => crate::operation::create_custom_metadata::CreateCustomMetadataError::EntityNotExistsException({
45 #[allow(unused_mut)]
46 let mut tmp = {
47 #[allow(unused_mut)]
48 let mut output = crate::types::error::builders::EntityNotExistsExceptionBuilder::default();
49 output = crate::protocol_serde::shape_entity_not_exists_exception::de_entity_not_exists_exception_json_err(_response_body, output)
50 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::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 "FailedDependencyException" => crate::operation::create_custom_metadata::CreateCustomMetadataError::FailedDependencyException({
60 #[allow(unused_mut)]
61 let mut tmp = {
62 #[allow(unused_mut)]
63 let mut output = crate::types::error::builders::FailedDependencyExceptionBuilder::default();
64 output = crate::protocol_serde::shape_failed_dependency_exception::de_failed_dependency_exception_json_err(_response_body, output)
65 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
66 let output = output.meta(generic);
67 output.build()
68 };
69 if tmp.message.is_none() {
70 tmp.message = _error_message;
71 }
72 tmp
73 }),
74 "ProhibitedStateException" => crate::operation::create_custom_metadata::CreateCustomMetadataError::ProhibitedStateException({
75 #[allow(unused_mut)]
76 let mut tmp = {
77 #[allow(unused_mut)]
78 let mut output = crate::types::error::builders::ProhibitedStateExceptionBuilder::default();
79 output = crate::protocol_serde::shape_prohibited_state_exception::de_prohibited_state_exception_json_err(_response_body, output)
80 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
81 let output = output.meta(generic);
82 output.build()
83 };
84 if tmp.message.is_none() {
85 tmp.message = _error_message;
86 }
87 tmp
88 }),
89 "ServiceUnavailableException" => crate::operation::create_custom_metadata::CreateCustomMetadataError::ServiceUnavailableException({
90 #[allow(unused_mut)]
91 let mut tmp = {
92 #[allow(unused_mut)]
93 let mut output = crate::types::error::builders::ServiceUnavailableExceptionBuilder::default();
94 output =
95 crate::protocol_serde::shape_service_unavailable_exception::de_service_unavailable_exception_json_err(_response_body, output)
96 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
97 let output = output.meta(generic);
98 output.build()
99 };
100 if tmp.message.is_none() {
101 tmp.message = _error_message;
102 }
103 tmp
104 }),
105 "UnauthorizedOperationException" => crate::operation::create_custom_metadata::CreateCustomMetadataError::UnauthorizedOperationException({
106 #[allow(unused_mut)]
107 let mut tmp = {
108 #[allow(unused_mut)]
109 let mut output = crate::types::error::builders::UnauthorizedOperationExceptionBuilder::default();
110 output = crate::protocol_serde::shape_unauthorized_operation_exception::de_unauthorized_operation_exception_json_err(
111 _response_body,
112 output,
113 )
114 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
115 let output = output.meta(generic);
116 output.build()
117 };
118 if tmp.message.is_none() {
119 tmp.message = _error_message;
120 }
121 tmp
122 }),
123 "UnauthorizedResourceAccessException" => {
124 crate::operation::create_custom_metadata::CreateCustomMetadataError::UnauthorizedResourceAccessException({
125 #[allow(unused_mut)]
126 let mut tmp = {
127 #[allow(unused_mut)]
128 let mut output = crate::types::error::builders::UnauthorizedResourceAccessExceptionBuilder::default();
129 output = crate::protocol_serde::shape_unauthorized_resource_access_exception::de_unauthorized_resource_access_exception_json_err(
130 _response_body,
131 output,
132 )
133 .map_err(crate::operation::create_custom_metadata::CreateCustomMetadataError::unhandled)?;
134 let output = output.meta(generic);
135 output.build()
136 };
137 if tmp.message.is_none() {
138 tmp.message = _error_message;
139 }
140 tmp
141 })
142 }
143 _ => crate::operation::create_custom_metadata::CreateCustomMetadataError::generic(generic),
144 })
145}
146
147#[allow(clippy::unnecessary_wraps)]
148pub fn de_create_custom_metadata_http_response(
149 _response_status: u16,
150 _response_headers: &::aws_smithy_runtime_api::http::Headers,
151 _response_body: &[u8],
152) -> std::result::Result<
153 crate::operation::create_custom_metadata::CreateCustomMetadataOutput,
154 crate::operation::create_custom_metadata::CreateCustomMetadataError,
155> {
156 Ok({
157 #[allow(unused_mut)]
158 let mut output = crate::operation::create_custom_metadata::builders::CreateCustomMetadataOutputBuilder::default();
159 output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
160 output.build()
161 })
162}
163
164pub fn ser_create_custom_metadata_headers(
165 input: &crate::operation::create_custom_metadata::CreateCustomMetadataInput,
166 mut builder: ::http::request::Builder,
167) -> std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
168 if let ::std::option::Option::Some(inner_1) = &input.authentication_token {
169 let formatted_2 = inner_1.as_str();
170 let header_value = formatted_2;
171 let header_value: ::http::HeaderValue = header_value.parse().map_err(|err| {
172 ::aws_smithy_types::error::operation::BuildError::invalid_field(
173 "authentication_token",
174 format!("`{}` cannot be used as a header value: {}", &"*** Sensitive Data Redacted ***", err),
175 )
176 })?;
177 builder = builder.header("Authentication", header_value);
178 }
179 Ok(builder)
180}
181
182pub fn ser_create_custom_metadata_input(
183 input: &crate::operation::create_custom_metadata::CreateCustomMetadataInput,
184) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
185 let mut out = String::new();
186 let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
187 crate::protocol_serde::shape_create_custom_metadata_input::ser_create_custom_metadata_input_input(&mut object, input)?;
188 object.finish();
189 Ok(::aws_smithy_types::body::SdkBody::from(out))
190}