aws_sdk_workdocs/protocol_serde/
shape_delete_document_version.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_delete_document_version_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::delete_document_version::DeleteDocumentVersionOutput,
9    crate::operation::delete_document_version::DeleteDocumentVersionError,
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::delete_document_version::DeleteDocumentVersionError::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::delete_document_version::DeleteDocumentVersionError::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::delete_document_version::DeleteDocumentVersionError::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::delete_document_version::DeleteDocumentVersionError::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        "ConflictingOperationException" => crate::operation::delete_document_version::DeleteDocumentVersionError::ConflictingOperationException({
44            #[allow(unused_mut)]
45            let mut tmp = {
46                #[allow(unused_mut)]
47                let mut output = crate::types::error::builders::ConflictingOperationExceptionBuilder::default();
48                output =
49                    crate::protocol_serde::shape_conflicting_operation_exception::de_conflicting_operation_exception_json_err(_response_body, output)
50                        .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::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        "EntityNotExistsException" => crate::operation::delete_document_version::DeleteDocumentVersionError::EntityNotExistsException({
60            #[allow(unused_mut)]
61            let mut tmp = {
62                #[allow(unused_mut)]
63                let mut output = crate::types::error::builders::EntityNotExistsExceptionBuilder::default();
64                output = crate::protocol_serde::shape_entity_not_exists_exception::de_entity_not_exists_exception_json_err(_response_body, output)
65                    .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::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        "FailedDependencyException" => crate::operation::delete_document_version::DeleteDocumentVersionError::FailedDependencyException({
75            #[allow(unused_mut)]
76            let mut tmp = {
77                #[allow(unused_mut)]
78                let mut output = crate::types::error::builders::FailedDependencyExceptionBuilder::default();
79                output = crate::protocol_serde::shape_failed_dependency_exception::de_failed_dependency_exception_json_err(_response_body, output)
80                    .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::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        "InvalidOperationException" => crate::operation::delete_document_version::DeleteDocumentVersionError::InvalidOperationException({
90            #[allow(unused_mut)]
91            let mut tmp = {
92                #[allow(unused_mut)]
93                let mut output = crate::types::error::builders::InvalidOperationExceptionBuilder::default();
94                output = crate::protocol_serde::shape_invalid_operation_exception::de_invalid_operation_exception_json_err(_response_body, output)
95                    .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::unhandled)?;
96                let output = output.meta(generic);
97                output.build()
98            };
99            if tmp.message.is_none() {
100                tmp.message = _error_message;
101            }
102            tmp
103        }),
104        "ProhibitedStateException" => crate::operation::delete_document_version::DeleteDocumentVersionError::ProhibitedStateException({
105            #[allow(unused_mut)]
106            let mut tmp = {
107                #[allow(unused_mut)]
108                let mut output = crate::types::error::builders::ProhibitedStateExceptionBuilder::default();
109                output = crate::protocol_serde::shape_prohibited_state_exception::de_prohibited_state_exception_json_err(_response_body, output)
110                    .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::unhandled)?;
111                let output = output.meta(generic);
112                output.build()
113            };
114            if tmp.message.is_none() {
115                tmp.message = _error_message;
116            }
117            tmp
118        }),
119        "UnauthorizedOperationException" => crate::operation::delete_document_version::DeleteDocumentVersionError::UnauthorizedOperationException({
120            #[allow(unused_mut)]
121            let mut tmp = {
122                #[allow(unused_mut)]
123                let mut output = crate::types::error::builders::UnauthorizedOperationExceptionBuilder::default();
124                output = crate::protocol_serde::shape_unauthorized_operation_exception::de_unauthorized_operation_exception_json_err(
125                    _response_body,
126                    output,
127                )
128                .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::unhandled)?;
129                let output = output.meta(generic);
130                output.build()
131            };
132            if tmp.message.is_none() {
133                tmp.message = _error_message;
134            }
135            tmp
136        }),
137        "UnauthorizedResourceAccessException" => {
138            crate::operation::delete_document_version::DeleteDocumentVersionError::UnauthorizedResourceAccessException({
139                #[allow(unused_mut)]
140                let mut tmp = {
141                    #[allow(unused_mut)]
142                    let mut output = crate::types::error::builders::UnauthorizedResourceAccessExceptionBuilder::default();
143                    output = crate::protocol_serde::shape_unauthorized_resource_access_exception::de_unauthorized_resource_access_exception_json_err(
144                        _response_body,
145                        output,
146                    )
147                    .map_err(crate::operation::delete_document_version::DeleteDocumentVersionError::unhandled)?;
148                    let output = output.meta(generic);
149                    output.build()
150                };
151                if tmp.message.is_none() {
152                    tmp.message = _error_message;
153                }
154                tmp
155            })
156        }
157        _ => crate::operation::delete_document_version::DeleteDocumentVersionError::generic(generic),
158    })
159}
160
161#[allow(clippy::unnecessary_wraps)]
162pub fn de_delete_document_version_http_response(
163    _response_status: u16,
164    _response_headers: &::aws_smithy_runtime_api::http::Headers,
165    _response_body: &[u8],
166) -> std::result::Result<
167    crate::operation::delete_document_version::DeleteDocumentVersionOutput,
168    crate::operation::delete_document_version::DeleteDocumentVersionError,
169> {
170    Ok({
171        #[allow(unused_mut)]
172        let mut output = crate::operation::delete_document_version::builders::DeleteDocumentVersionOutputBuilder::default();
173        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
174        output.build()
175    })
176}
177
178pub fn ser_delete_document_version_headers(
179    input: &crate::operation::delete_document_version::DeleteDocumentVersionInput,
180    mut builder: ::http::request::Builder,
181) -> std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
182    if let ::std::option::Option::Some(inner_1) = &input.authentication_token {
183        let formatted_2 = inner_1.as_str();
184        let header_value = formatted_2;
185        let header_value: ::http::HeaderValue = header_value.parse().map_err(|err| {
186            ::aws_smithy_types::error::operation::BuildError::invalid_field(
187                "authentication_token",
188                format!("`{}` cannot be used as a header value: {}", &"*** Sensitive Data Redacted ***", err),
189            )
190        })?;
191        builder = builder.header("Authentication", header_value);
192    }
193    Ok(builder)
194}