aws_sdk_accessanalyzer/protocol_serde/
shape_create_archive_rule.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_create_archive_rule_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::create_archive_rule::CreateArchiveRuleOutput, crate::operation::create_archive_rule::CreateArchiveRuleError>
8{
9    #[allow(unused_mut)]
10    let mut generic_builder = crate::protocol_serde::parse_http_error_metadata(_response_status, _response_headers, _response_body)
11        .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
12    generic_builder = ::aws_types::request_id::apply_request_id(generic_builder, _response_headers);
13    let generic = generic_builder.build();
14    let error_code = match generic.code() {
15        Some(code) => code,
16        None => return Err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled(generic)),
17    };
18
19    let _error_message = generic.message().map(|msg| msg.to_owned());
20    Err(match error_code {
21        "AccessDeniedException" => crate::operation::create_archive_rule::CreateArchiveRuleError::AccessDeniedException({
22            #[allow(unused_mut)]
23            let mut tmp = {
24                #[allow(unused_mut)]
25                let mut output = crate::types::error::builders::AccessDeniedExceptionBuilder::default();
26                output = crate::protocol_serde::shape_access_denied_exception::de_access_denied_exception_json_err(_response_body, output)
27                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
28                let output = output.meta(generic);
29                crate::serde_util::access_denied_exception_correct_errors(output)
30                    .build()
31                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
32            };
33            tmp
34        }),
35        "ConflictException" => crate::operation::create_archive_rule::CreateArchiveRuleError::ConflictException({
36            #[allow(unused_mut)]
37            let mut tmp = {
38                #[allow(unused_mut)]
39                let mut output = crate::types::error::builders::ConflictExceptionBuilder::default();
40                output = crate::protocol_serde::shape_conflict_exception::de_conflict_exception_json_err(_response_body, output)
41                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
42                let output = output.meta(generic);
43                crate::serde_util::conflict_exception_correct_errors(output)
44                    .build()
45                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
46            };
47            tmp
48        }),
49        "InternalServerException" => crate::operation::create_archive_rule::CreateArchiveRuleError::InternalServerException({
50            #[allow(unused_mut)]
51            let mut tmp = {
52                #[allow(unused_mut)]
53                let mut output = crate::types::error::builders::InternalServerExceptionBuilder::default();
54                output = crate::protocol_serde::shape_internal_server_exception::de_internal_server_exception_json_err(_response_body, output)
55                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
56                output = output.set_retry_after_seconds(
57                    crate::protocol_serde::shape_internal_server_exception::de_retry_after_seconds_header(_response_headers).map_err(|_| {
58                        crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled(
59                            "Failed to parse retryAfterSeconds from header `Retry-After",
60                        )
61                    })?,
62                );
63                let output = output.meta(generic);
64                crate::serde_util::internal_server_exception_correct_errors(output)
65                    .build()
66                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
67            };
68            tmp
69        }),
70        "ResourceNotFoundException" => crate::operation::create_archive_rule::CreateArchiveRuleError::ResourceNotFoundException({
71            #[allow(unused_mut)]
72            let mut tmp = {
73                #[allow(unused_mut)]
74                let mut output = crate::types::error::builders::ResourceNotFoundExceptionBuilder::default();
75                output = crate::protocol_serde::shape_resource_not_found_exception::de_resource_not_found_exception_json_err(_response_body, output)
76                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
77                let output = output.meta(generic);
78                crate::serde_util::resource_not_found_exception_correct_errors(output)
79                    .build()
80                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
81            };
82            tmp
83        }),
84        "ServiceQuotaExceededException" => crate::operation::create_archive_rule::CreateArchiveRuleError::ServiceQuotaExceededException({
85            #[allow(unused_mut)]
86            let mut tmp = {
87                #[allow(unused_mut)]
88                let mut output = crate::types::error::builders::ServiceQuotaExceededExceptionBuilder::default();
89                output = crate::protocol_serde::shape_service_quota_exceeded_exception::de_service_quota_exceeded_exception_json_err(
90                    _response_body,
91                    output,
92                )
93                .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
94                let output = output.meta(generic);
95                crate::serde_util::service_quota_exceeded_exception_correct_errors(output)
96                    .build()
97                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
98            };
99            tmp
100        }),
101        "ThrottlingException" => crate::operation::create_archive_rule::CreateArchiveRuleError::ThrottlingException({
102            #[allow(unused_mut)]
103            let mut tmp = {
104                #[allow(unused_mut)]
105                let mut output = crate::types::error::builders::ThrottlingExceptionBuilder::default();
106                output = crate::protocol_serde::shape_throttling_exception::de_throttling_exception_json_err(_response_body, output)
107                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
108                output = output.set_retry_after_seconds(
109                    crate::protocol_serde::shape_throttling_exception::de_retry_after_seconds_header(_response_headers).map_err(|_| {
110                        crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled(
111                            "Failed to parse retryAfterSeconds from header `Retry-After",
112                        )
113                    })?,
114                );
115                let output = output.meta(generic);
116                crate::serde_util::throttling_exception_correct_errors(output)
117                    .build()
118                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
119            };
120            tmp
121        }),
122        "ValidationException" => crate::operation::create_archive_rule::CreateArchiveRuleError::ValidationException({
123            #[allow(unused_mut)]
124            let mut tmp = {
125                #[allow(unused_mut)]
126                let mut output = crate::types::error::builders::ValidationExceptionBuilder::default();
127                output = crate::protocol_serde::shape_validation_exception::de_validation_exception_json_err(_response_body, output)
128                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?;
129                let output = output.meta(generic);
130                crate::serde_util::validation_exception_correct_errors(output)
131                    .build()
132                    .map_err(crate::operation::create_archive_rule::CreateArchiveRuleError::unhandled)?
133            };
134            tmp
135        }),
136        _ => crate::operation::create_archive_rule::CreateArchiveRuleError::generic(generic),
137    })
138}
139
140#[allow(clippy::unnecessary_wraps)]
141pub fn de_create_archive_rule_http_response(
142    _response_status: u16,
143    _response_headers: &::aws_smithy_runtime_api::http::Headers,
144    _response_body: &[u8],
145) -> std::result::Result<crate::operation::create_archive_rule::CreateArchiveRuleOutput, crate::operation::create_archive_rule::CreateArchiveRuleError>
146{
147    Ok({
148        #[allow(unused_mut)]
149        let mut output = crate::operation::create_archive_rule::builders::CreateArchiveRuleOutputBuilder::default();
150        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
151        output.build()
152    })
153}
154
155pub fn ser_create_archive_rule_input(
156    input: &crate::operation::create_archive_rule::CreateArchiveRuleInput,
157) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
158    let mut out = String::new();
159    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
160    crate::protocol_serde::shape_create_archive_rule_input::ser_create_archive_rule_input_input(&mut object, input)?;
161    object.finish();
162    Ok(::aws_smithy_types::body::SdkBody::from(out))
163}