1 - | // Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2 - | #[allow(clippy::unnecessary_wraps)]
|
3 - | pub fn de_upload_archive_http_error(
|
4 - | _response_status: u16,
|
5 - | _response_headers: &::aws_smithy_runtime_api::http::Headers,
|
6 - | _response_body: &[u8],
|
7 - | ) -> std::result::Result<crate::operation::upload_archive::UploadArchiveOutput, crate::operation::upload_archive::UploadArchiveError> {
|
8 - | #[allow(unused_mut)]
|
9 - | let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
|
10 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
11 - | generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
|
12 - | let generic = generic_builder.build();
|
13 - | let error_code = match generic.code() {
|
14 - | Some(code) => code,
|
15 - | None => return Err(crate::operation::upload_archive::UploadArchiveError::unhandled(generic)),
|
16 - | };
|
17 - |
|
18 - | let _error_message = generic.message().map(|msg| msg.to_owned());
|
19 - | Err(match error_code {
|
20 - | "InvalidParameterValueException" => crate::operation::upload_archive::UploadArchiveError::InvalidParameterValueException({
|
21 - | #[allow(unused_mut)]
|
22 - | let mut tmp = {
|
23 - | #[allow(unused_mut)]
|
24 - | let mut output = crate::types::error::builders::InvalidParameterValueExceptionBuilder::default();
|
25 - | output = crate::protocol_serde::shape_invalid_parameter_value_exception::de_invalid_parameter_value_exception_json_err(
|
26 - | _response_body,
|
27 - | output,
|
28 - | )
|
29 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
30 - | let output = output.meta(generic);
|
31 - | output.build()
|
32 - | };
|
33 - | if tmp.message.is_none() {
|
34 - | tmp.message = _error_message;
|
35 - | }
|
36 - | tmp
|
37 - | }),
|
38 - | "MissingParameterValueException" => crate::operation::upload_archive::UploadArchiveError::MissingParameterValueException({
|
39 - | #[allow(unused_mut)]
|
40 - | let mut tmp = {
|
41 - | #[allow(unused_mut)]
|
42 - | let mut output = crate::types::error::builders::MissingParameterValueExceptionBuilder::default();
|
43 - | output = crate::protocol_serde::shape_missing_parameter_value_exception::de_missing_parameter_value_exception_json_err(
|
44 - | _response_body,
|
45 - | output,
|
46 - | )
|
47 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
48 - | let output = output.meta(generic);
|
49 - | output.build()
|
50 - | };
|
51 - | if tmp.message.is_none() {
|
52 - | tmp.message = _error_message;
|
53 - | }
|
54 - | tmp
|
55 - | }),
|
56 - | "RequestTimeoutException" => crate::operation::upload_archive::UploadArchiveError::RequestTimeoutException({
|
57 - | #[allow(unused_mut)]
|
58 - | let mut tmp = {
|
59 - | #[allow(unused_mut)]
|
60 - | let mut output = crate::types::error::builders::RequestTimeoutExceptionBuilder::default();
|
61 - | output = crate::protocol_serde::shape_request_timeout_exception::de_request_timeout_exception_json_err(_response_body, output)
|
62 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
63 - | let output = output.meta(generic);
|
64 - | output.build()
|
65 - | };
|
66 - | if tmp.message.is_none() {
|
67 - | tmp.message = _error_message;
|
68 - | }
|
69 - | tmp
|
70 - | }),
|
71 - | "ResourceNotFoundException" => crate::operation::upload_archive::UploadArchiveError::ResourceNotFoundException({
|
72 - | #[allow(unused_mut)]
|
73 - | let mut tmp = {
|
74 - | #[allow(unused_mut)]
|
75 - | let mut output = crate::types::error::builders::ResourceNotFoundExceptionBuilder::default();
|
76 - | output = crate::protocol_serde::shape_resource_not_found_exception::de_resource_not_found_exception_json_err(_response_body, output)
|
77 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
78 - | let output = output.meta(generic);
|
79 - | output.build()
|
80 - | };
|
81 - | if tmp.message.is_none() {
|
82 - | tmp.message = _error_message;
|
83 - | }
|
84 - | tmp
|
85 - | }),
|
86 - | "ServiceUnavailableException" => crate::operation::upload_archive::UploadArchiveError::ServiceUnavailableException({
|
87 - | #[allow(unused_mut)]
|
88 - | let mut tmp = {
|
89 - | #[allow(unused_mut)]
|
90 - | let mut output = crate::types::error::builders::ServiceUnavailableExceptionBuilder::default();
|
91 - | output =
|
92 - | crate::protocol_serde::shape_service_unavailable_exception::de_service_unavailable_exception_json_err(_response_body, output)
|
93 - | .map_err(crate::operation::upload_archive::UploadArchiveError::unhandled)?;
|
94 - | let output = output.meta(generic);
|
95 - | output.build()
|
96 - | };
|
97 - | if tmp.message.is_none() {
|
98 - | tmp.message = _error_message;
|
99 - | }
|
100 - | tmp
|
101 - | }),
|
102 - | _ => crate::operation::upload_archive::UploadArchiveError::generic(generic),
|
103 - | })
|
104 - | }
|
105 - |
|
106 - | #[allow(clippy::unnecessary_wraps)]
|
107 - | pub fn de_upload_archive_http_response(
|
108 - | _response_status: u16,
|
109 - | _response_headers: &::aws_smithy_runtime_api::http::Headers,
|
110 - | _response_body: &[u8],
|
111 - | ) -> std::result::Result<crate::operation::upload_archive::UploadArchiveOutput, crate::operation::upload_archive::UploadArchiveError> {
|
112 - | Ok({
|
113 - | #[allow(unused_mut)]
|
114 - | let mut output = crate::operation::upload_archive::builders::UploadArchiveOutputBuilder::default();
|
115 - | output = output.set_archive_id(
|
116 - | crate::protocol_serde::shape_upload_archive_output::de_archive_id_header(_response_headers).map_err(|_| {
|
117 - | crate::operation::upload_archive::UploadArchiveError::unhandled("Failed to parse archiveId from header `x-amz-archive-id")
|
118 - | })?,
|
119 - | );
|
120 - | output = output.set_checksum(
|
121 - | crate::protocol_serde::shape_upload_archive_output::de_checksum_header(_response_headers).map_err(|_| {
|
122 - | crate::operation::upload_archive::UploadArchiveError::unhandled("Failed to parse checksum from header `x-amz-sha256-tree-hash")
|
123 - | })?,
|
124 - | );
|
125 - | output = output.set_location(
|
126 - | crate::protocol_serde::shape_upload_archive_output::de_location_header(_response_headers)
|
127 - | .map_err(|_| crate::operation::upload_archive::UploadArchiveError::unhandled("Failed to parse location from header `Location"))?,
|
128 - | );
|
129 - | output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
|
130 - | output.build()
|
131 - | })
|
132 - | }
|
133 - |
|
134 - | pub fn ser_upload_archive_headers(
|
135 - | input: &crate::operation::upload_archive::UploadArchiveInput,
|
136 - | mut builder: ::http_1x::request::Builder,
|
137 - | ) -> std::result::Result<::http_1x::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
|
138 - | if let ::std::option::Option::Some(inner_1) = &input.archive_description {
|
139 - | let formatted_2 = inner_1.as_str();
|
140 - | let header_value = formatted_2;
|
141 - | let header_value: ::http_1x::HeaderValue = header_value.parse().map_err(|err| {
|
142 - | ::aws_smithy_types::error::operation::BuildError::invalid_field(
|
143 - | "archive_description",
|
144 - | format!("`{}` cannot be used as a header value: {}", &header_value, err),
|
145 - | )
|
146 - | })?;
|
147 - | builder = builder.header("x-amz-archive-description", header_value);
|
148 - | }
|
149 - | if let ::std::option::Option::Some(inner_3) = &input.checksum {
|
150 - | let formatted_4 = inner_3.as_str();
|
151 - | let header_value = formatted_4;
|
152 - | let header_value: ::http_1x::HeaderValue = header_value.parse().map_err(|err| {
|
153 - | ::aws_smithy_types::error::operation::BuildError::invalid_field(
|
154 - | "checksum",
|
155 - | format!("`{}` cannot be used as a header value: {}", &header_value, err),
|
156 - | )
|
157 - | })?;
|
158 - | builder = builder.header("x-amz-sha256-tree-hash", header_value);
|
159 - | }
|
160 - | Ok(builder)
|
161 - | }
|