aws_sdk_quicksight/protocol_serde/
shape_delete_user_by_principal_id.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_delete_user_by_principal_id_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_user_by_principal_id::DeleteUserByPrincipalIdOutput,
9    crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError,
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_user_by_principal_id::DeleteUserByPrincipalIdError::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::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled(
20                generic,
21            ))
22        }
23    };
24
25    let _error_message = generic.message().map(|msg| msg.to_owned());
26    Err(match error_code {
27        "AccessDeniedException" => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::AccessDeniedException({
28            #[allow(unused_mut)]
29            let mut tmp = {
30                #[allow(unused_mut)]
31                let mut output = crate::types::error::builders::AccessDeniedExceptionBuilder::default();
32                output = crate::protocol_serde::shape_access_denied_exception::de_access_denied_exception_json_err(_response_body, output)
33                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::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        "InternalFailureException" => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::InternalFailureException({
43            #[allow(unused_mut)]
44            let mut tmp = {
45                #[allow(unused_mut)]
46                let mut output = crate::types::error::builders::InternalFailureExceptionBuilder::default();
47                output = crate::protocol_serde::shape_internal_failure_exception::de_internal_failure_exception_json_err(_response_body, output)
48                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled)?;
49                let output = output.meta(generic);
50                output.build()
51            };
52            if tmp.message.is_none() {
53                tmp.message = _error_message;
54            }
55            tmp
56        }),
57        "InvalidParameterValueException" => {
58            crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::InvalidParameterValueException({
59                #[allow(unused_mut)]
60                let mut tmp = {
61                    #[allow(unused_mut)]
62                    let mut output = crate::types::error::builders::InvalidParameterValueExceptionBuilder::default();
63                    output = crate::protocol_serde::shape_invalid_parameter_value_exception::de_invalid_parameter_value_exception_json_err(
64                        _response_body,
65                        output,
66                    )
67                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled)?;
68                    let output = output.meta(generic);
69                    output.build()
70                };
71                if tmp.message.is_none() {
72                    tmp.message = _error_message;
73                }
74                tmp
75            })
76        }
77        "PreconditionNotMetException" => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::PreconditionNotMetException({
78            #[allow(unused_mut)]
79            let mut tmp = {
80                #[allow(unused_mut)]
81                let mut output = crate::types::error::builders::PreconditionNotMetExceptionBuilder::default();
82                output =
83                    crate::protocol_serde::shape_precondition_not_met_exception::de_precondition_not_met_exception_json_err(_response_body, output)
84                        .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::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        "ResourceNotFoundException" => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::ResourceNotFoundException({
94            #[allow(unused_mut)]
95            let mut tmp = {
96                #[allow(unused_mut)]
97                let mut output = crate::types::error::builders::ResourceNotFoundExceptionBuilder::default();
98                output = crate::protocol_serde::shape_resource_not_found_exception::de_resource_not_found_exception_json_err(_response_body, output)
99                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::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        "ResourceUnavailableException" => {
109            crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::ResourceUnavailableException({
110                #[allow(unused_mut)]
111                let mut tmp = {
112                    #[allow(unused_mut)]
113                    let mut output = crate::types::error::builders::ResourceUnavailableExceptionBuilder::default();
114                    output = crate::protocol_serde::shape_resource_unavailable_exception::de_resource_unavailable_exception_json_err(
115                        _response_body,
116                        output,
117                    )
118                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled)?;
119                    let output = output.meta(generic);
120                    output.build()
121                };
122                if tmp.message.is_none() {
123                    tmp.message = _error_message;
124                }
125                tmp
126            })
127        }
128        "ThrottlingException" => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::ThrottlingException({
129            #[allow(unused_mut)]
130            let mut tmp = {
131                #[allow(unused_mut)]
132                let mut output = crate::types::error::builders::ThrottlingExceptionBuilder::default();
133                output = crate::protocol_serde::shape_throttling_exception::de_throttling_exception_json_err(_response_body, output)
134                    .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled)?;
135                let output = output.meta(generic);
136                output.build()
137            };
138            if tmp.message.is_none() {
139                tmp.message = _error_message;
140            }
141            tmp
142        }),
143        _ => crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::generic(generic),
144    })
145}
146
147#[allow(clippy::unnecessary_wraps)]
148pub fn de_delete_user_by_principal_id_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::delete_user_by_principal_id::DeleteUserByPrincipalIdOutput,
154    crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError,
155> {
156    Ok({
157        #[allow(unused_mut)]
158        let mut output = crate::operation::delete_user_by_principal_id::builders::DeleteUserByPrincipalIdOutputBuilder::default();
159        output = crate::protocol_serde::shape_delete_user_by_principal_id::de_delete_user_by_principal_id(_response_body, output)
160            .map_err(crate::operation::delete_user_by_principal_id::DeleteUserByPrincipalIdError::unhandled)?;
161        output = output.set_status(Some(_response_status as _));
162        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
163        output.build()
164    })
165}
166
167pub(crate) fn de_delete_user_by_principal_id(
168    value: &[u8],
169    mut builder: crate::operation::delete_user_by_principal_id::builders::DeleteUserByPrincipalIdOutputBuilder,
170) -> ::std::result::Result<
171    crate::operation::delete_user_by_principal_id::builders::DeleteUserByPrincipalIdOutputBuilder,
172    ::aws_smithy_json::deserialize::error::DeserializeError,
173> {
174    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
175    let tokens = &mut tokens_owned;
176    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
177    loop {
178        match tokens.next().transpose()? {
179            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
180            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
181                "RequestId" => {
182                    builder = builder.set_request_id(
183                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
184                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
185                            .transpose()?,
186                    );
187                }
188                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
189            },
190            other => {
191                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
192                    "expected object key or end object, found: {other:?}"
193                )))
194            }
195        }
196    }
197    if tokens.next().is_some() {
198        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
199            "found more JSON tokens after completing parsing",
200        ));
201    }
202    Ok(builder)
203}