aws_sdk_databasemigration/protocol_serde/
shape_modify_replication_instance.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_modify_replication_instance_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::modify_replication_instance::ModifyReplicationInstanceOutput,
9    crate::operation::modify_replication_instance::ModifyReplicationInstanceError,
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::modify_replication_instance::ModifyReplicationInstanceError::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 => {
19            return Err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled(
20                generic,
21            ))
22        }
23    };
24
25    let _error_message = generic.message().map(|msg| msg.to_owned());
26    Err(match error_code {
27        "AccessDeniedFault" => crate::operation::modify_replication_instance::ModifyReplicationInstanceError::AccessDeniedFault({
28            #[allow(unused_mut)]
29            let mut tmp = {
30                #[allow(unused_mut)]
31                let mut output = crate::types::error::builders::AccessDeniedFaultBuilder::default();
32                output = crate::protocol_serde::shape_access_denied_fault::de_access_denied_fault_json_err(_response_body, output)
33                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::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        "InsufficientResourceCapacityFault" => {
43            crate::operation::modify_replication_instance::ModifyReplicationInstanceError::InsufficientResourceCapacityFault({
44                #[allow(unused_mut)]
45                let mut tmp = {
46                    #[allow(unused_mut)]
47                    let mut output = crate::types::error::builders::InsufficientResourceCapacityFaultBuilder::default();
48                    output = crate::protocol_serde::shape_insufficient_resource_capacity_fault::de_insufficient_resource_capacity_fault_json_err(
49                        _response_body,
50                        output,
51                    )
52                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled)?;
53                    let output = output.meta(generic);
54                    output.build()
55                };
56                if tmp.message.is_none() {
57                    tmp.message = _error_message;
58                }
59                tmp
60            })
61        }
62        "InvalidResourceStateFault" => crate::operation::modify_replication_instance::ModifyReplicationInstanceError::InvalidResourceStateFault({
63            #[allow(unused_mut)]
64            let mut tmp = {
65                #[allow(unused_mut)]
66                let mut output = crate::types::error::builders::InvalidResourceStateFaultBuilder::default();
67                output = crate::protocol_serde::shape_invalid_resource_state_fault::de_invalid_resource_state_fault_json_err(_response_body, output)
68                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled)?;
69                let output = output.meta(generic);
70                output.build()
71            };
72            if tmp.message.is_none() {
73                tmp.message = _error_message;
74            }
75            tmp
76        }),
77        "ResourceAlreadyExistsFault" => crate::operation::modify_replication_instance::ModifyReplicationInstanceError::ResourceAlreadyExistsFault({
78            #[allow(unused_mut)]
79            let mut tmp = {
80                #[allow(unused_mut)]
81                let mut output = crate::types::error::builders::ResourceAlreadyExistsFaultBuilder::default();
82                output =
83                    crate::protocol_serde::shape_resource_already_exists_fault::de_resource_already_exists_fault_json_err(_response_body, output)
84                        .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled)?;
85                let output = output.meta(generic);
86                output.build()
87            };
88            if tmp.message.is_none() {
89                tmp.message = _error_message;
90            }
91            tmp
92        }),
93        "ResourceNotFoundFault" => crate::operation::modify_replication_instance::ModifyReplicationInstanceError::ResourceNotFoundFault({
94            #[allow(unused_mut)]
95            let mut tmp = {
96                #[allow(unused_mut)]
97                let mut output = crate::types::error::builders::ResourceNotFoundFaultBuilder::default();
98                output = crate::protocol_serde::shape_resource_not_found_fault::de_resource_not_found_fault_json_err(_response_body, output)
99                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled)?;
100                let output = output.meta(generic);
101                output.build()
102            };
103            if tmp.message.is_none() {
104                tmp.message = _error_message;
105            }
106            tmp
107        }),
108        "StorageQuotaExceededFault" => crate::operation::modify_replication_instance::ModifyReplicationInstanceError::StorageQuotaExceededFault({
109            #[allow(unused_mut)]
110            let mut tmp = {
111                #[allow(unused_mut)]
112                let mut output = crate::types::error::builders::StorageQuotaExceededFaultBuilder::default();
113                output = crate::protocol_serde::shape_storage_quota_exceeded_fault::de_storage_quota_exceeded_fault_json_err(_response_body, output)
114                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::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        "UpgradeDependencyFailureFault" => {
124            crate::operation::modify_replication_instance::ModifyReplicationInstanceError::UpgradeDependencyFailureFault({
125                #[allow(unused_mut)]
126                let mut tmp = {
127                    #[allow(unused_mut)]
128                    let mut output = crate::types::error::builders::UpgradeDependencyFailureFaultBuilder::default();
129                    output = crate::protocol_serde::shape_upgrade_dependency_failure_fault::de_upgrade_dependency_failure_fault_json_err(
130                        _response_body,
131                        output,
132                    )
133                    .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::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::modify_replication_instance::ModifyReplicationInstanceError::generic(generic),
144    })
145}
146
147#[allow(clippy::unnecessary_wraps)]
148pub fn de_modify_replication_instance_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::modify_replication_instance::ModifyReplicationInstanceOutput,
154    crate::operation::modify_replication_instance::ModifyReplicationInstanceError,
155> {
156    Ok({
157        #[allow(unused_mut)]
158        let mut output = crate::operation::modify_replication_instance::builders::ModifyReplicationInstanceOutputBuilder::default();
159        output = crate::protocol_serde::shape_modify_replication_instance::de_modify_replication_instance(_response_body, output)
160            .map_err(crate::operation::modify_replication_instance::ModifyReplicationInstanceError::unhandled)?;
161        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
162        output.build()
163    })
164}
165
166pub fn ser_modify_replication_instance_input(
167    input: &crate::operation::modify_replication_instance::ModifyReplicationInstanceInput,
168) -> ::std::result::Result<::aws_smithy_types::body::SdkBody, ::aws_smithy_types::error::operation::SerializationError> {
169    let mut out = String::new();
170    let mut object = ::aws_smithy_json::serialize::JsonObjectWriter::new(&mut out);
171    crate::protocol_serde::shape_modify_replication_instance_input::ser_modify_replication_instance_input_input(&mut object, input)?;
172    object.finish();
173    Ok(::aws_smithy_types::body::SdkBody::from(out))
174}
175
176pub(crate) fn de_modify_replication_instance(
177    value: &[u8],
178    mut builder: crate::operation::modify_replication_instance::builders::ModifyReplicationInstanceOutputBuilder,
179) -> ::std::result::Result<
180    crate::operation::modify_replication_instance::builders::ModifyReplicationInstanceOutputBuilder,
181    ::aws_smithy_json::deserialize::error::DeserializeError,
182> {
183    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
184    let tokens = &mut tokens_owned;
185    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
186    loop {
187        match tokens.next().transpose()? {
188            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
189            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
190                "ReplicationInstance" => {
191                    builder = builder.set_replication_instance(crate::protocol_serde::shape_replication_instance::de_replication_instance(tokens)?);
192                }
193                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
194            },
195            other => {
196                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
197                    "expected object key or end object, found: {:?}",
198                    other
199                )))
200            }
201        }
202    }
203    if tokens.next().is_some() {
204        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
205            "found more JSON tokens after completing parsing",
206        ));
207    }
208    Ok(builder)
209}