aws_sdk_kms/protocol_serde/
shape_connect_custom_key_store.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_connect_custom_key_store_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::connect_custom_key_store::ConnectCustomKeyStoreOutput,
9    crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError,
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::connect_custom_key_store::ConnectCustomKeyStoreError::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::connect_custom_key_store::ConnectCustomKeyStoreError::unhandled(generic)),
19    };
20
21    let _error_message = generic.message().map(|msg| msg.to_owned());
22    Err(match error_code {
23        "CloudHsmClusterInvalidConfigurationException" => {
24            crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::CloudHsmClusterInvalidConfigurationException({
25                #[allow(unused_mut)]
26                let mut tmp = {
27                    #[allow(unused_mut)]
28                    let mut output = crate::types::error::builders::CloudHsmClusterInvalidConfigurationExceptionBuilder::default();
29                    output = crate::protocol_serde::shape_cloud_hsm_cluster_invalid_configuration_exception::de_cloud_hsm_cluster_invalid_configuration_exception_json_err(_response_body, output).map_err(crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::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        }
39        "CloudHsmClusterNotActiveException" => {
40            crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::CloudHsmClusterNotActiveException({
41                #[allow(unused_mut)]
42                let mut tmp = {
43                    #[allow(unused_mut)]
44                    let mut output = crate::types::error::builders::CloudHsmClusterNotActiveExceptionBuilder::default();
45                    output = crate::protocol_serde::shape_cloud_hsm_cluster_not_active_exception::de_cloud_hsm_cluster_not_active_exception_json_err(
46                        _response_body,
47                        output,
48                    )
49                    .map_err(crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::unhandled)?;
50                    let output = output.meta(generic);
51                    output.build()
52                };
53                if tmp.message.is_none() {
54                    tmp.message = _error_message;
55                }
56                tmp
57            })
58        }
59        "CustomKeyStoreInvalidStateException" => {
60            crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::CustomKeyStoreInvalidStateException({
61                #[allow(unused_mut)]
62                let mut tmp = {
63                    #[allow(unused_mut)]
64                    let mut output = crate::types::error::builders::CustomKeyStoreInvalidStateExceptionBuilder::default();
65                    output =
66                        crate::protocol_serde::shape_custom_key_store_invalid_state_exception::de_custom_key_store_invalid_state_exception_json_err(
67                            _response_body,
68                            output,
69                        )
70                        .map_err(crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::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        "CustomKeyStoreNotFoundException" => {
81            crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::CustomKeyStoreNotFoundException({
82                #[allow(unused_mut)]
83                let mut tmp = {
84                    #[allow(unused_mut)]
85                    let mut output = crate::types::error::builders::CustomKeyStoreNotFoundExceptionBuilder::default();
86                    output = crate::protocol_serde::shape_custom_key_store_not_found_exception::de_custom_key_store_not_found_exception_json_err(
87                        _response_body,
88                        output,
89                    )
90                    .map_err(crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::unhandled)?;
91                    let output = output.meta(generic);
92                    output.build()
93                };
94                if tmp.message.is_none() {
95                    tmp.message = _error_message;
96                }
97                tmp
98            })
99        }
100        "KMSInternalException" => crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::KmsInternalException({
101            #[allow(unused_mut)]
102            let mut tmp = {
103                #[allow(unused_mut)]
104                let mut output = crate::types::error::builders::KmsInternalExceptionBuilder::default();
105                output = crate::protocol_serde::shape_kms_internal_exception::de_kms_internal_exception_json_err(_response_body, output)
106                    .map_err(crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::unhandled)?;
107                let output = output.meta(generic);
108                output.build()
109            };
110            if tmp.message.is_none() {
111                tmp.message = _error_message;
112            }
113            tmp
114        }),
115        _ => crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError::generic(generic),
116    })
117}
118
119#[allow(clippy::unnecessary_wraps)]
120pub fn de_connect_custom_key_store_http_response(
121    _response_status: u16,
122    _response_headers: &::aws_smithy_runtime_api::http::Headers,
123    _response_body: &[u8],
124) -> std::result::Result<
125    crate::operation::connect_custom_key_store::ConnectCustomKeyStoreOutput,
126    crate::operation::connect_custom_key_store::ConnectCustomKeyStoreError,
127> {
128    Ok({
129        #[allow(unused_mut)]
130        let mut output = crate::operation::connect_custom_key_store::builders::ConnectCustomKeyStoreOutputBuilder::default();
131        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
132        output.build()
133    })
134}
135
136pub fn ser_connect_custom_key_store_input(
137    input: &crate::operation::connect_custom_key_store::ConnectCustomKeyStoreInput,
138) -> Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
139    let mut out = String::new();
140    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
141    crate::protocol_serde::shape_connect_custom_key_store_input::ser_connect_custom_key_store_input_input(&mut object, input)?;
142    object.finish();
143    Ok(::aws_smithy_types::body::SdkBody::from(out))
144}