aws_sdk_mediapackagev2/protocol_serde/
shape_get_origin_endpoint.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(clippy::unnecessary_wraps)]
3pub fn de_get_origin_endpoint_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::get_origin_endpoint::GetOriginEndpointOutput, crate::operation::get_origin_endpoint::GetOriginEndpointError>
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::get_origin_endpoint::GetOriginEndpointError::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::get_origin_endpoint::GetOriginEndpointError::unhandled(generic)),
17    };
18
19    let _error_message = generic.message().map(|msg| msg.to_owned());
20    Err(match error_code {
21        "AccessDeniedException" => crate::operation::get_origin_endpoint::GetOriginEndpointError::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::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
28                let output = output.meta(generic);
29                output.build()
30            };
31            if tmp.message.is_none() {
32                tmp.message = _error_message;
33            }
34            tmp
35        }),
36        "InternalServerException" => crate::operation::get_origin_endpoint::GetOriginEndpointError::InternalServerException({
37            #[allow(unused_mut)]
38            let mut tmp = {
39                #[allow(unused_mut)]
40                let mut output = crate::types::error::builders::InternalServerExceptionBuilder::default();
41                output = crate::protocol_serde::shape_internal_server_exception::de_internal_server_exception_json_err(_response_body, output)
42                    .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
43                let output = output.meta(generic);
44                output.build()
45            };
46            if tmp.message.is_none() {
47                tmp.message = _error_message;
48            }
49            tmp
50        }),
51        "ResourceNotFoundException" => crate::operation::get_origin_endpoint::GetOriginEndpointError::ResourceNotFoundException({
52            #[allow(unused_mut)]
53            let mut tmp = {
54                #[allow(unused_mut)]
55                let mut output = crate::types::error::builders::ResourceNotFoundExceptionBuilder::default();
56                output = crate::protocol_serde::shape_resource_not_found_exception::de_resource_not_found_exception_json_err(_response_body, output)
57                    .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
58                let output = output.meta(generic);
59                output.build()
60            };
61            if tmp.message.is_none() {
62                tmp.message = _error_message;
63            }
64            tmp
65        }),
66        "ThrottlingException" => crate::operation::get_origin_endpoint::GetOriginEndpointError::ThrottlingException({
67            #[allow(unused_mut)]
68            let mut tmp = {
69                #[allow(unused_mut)]
70                let mut output = crate::types::error::builders::ThrottlingExceptionBuilder::default();
71                output = crate::protocol_serde::shape_throttling_exception::de_throttling_exception_json_err(_response_body, output)
72                    .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
73                let output = output.meta(generic);
74                output.build()
75            };
76            if tmp.message.is_none() {
77                tmp.message = _error_message;
78            }
79            tmp
80        }),
81        "ValidationException" => crate::operation::get_origin_endpoint::GetOriginEndpointError::ValidationException({
82            #[allow(unused_mut)]
83            let mut tmp = {
84                #[allow(unused_mut)]
85                let mut output = crate::types::error::builders::ValidationExceptionBuilder::default();
86                output = crate::protocol_serde::shape_validation_exception::de_validation_exception_json_err(_response_body, output)
87                    .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
88                let output = output.meta(generic);
89                output.build()
90            };
91            if tmp.message.is_none() {
92                tmp.message = _error_message;
93            }
94            tmp
95        }),
96        _ => crate::operation::get_origin_endpoint::GetOriginEndpointError::generic(generic),
97    })
98}
99
100#[allow(clippy::unnecessary_wraps)]
101pub fn de_get_origin_endpoint_http_response(
102    _response_status: u16,
103    _response_headers: &::aws_smithy_runtime_api::http::Headers,
104    _response_body: &[u8],
105) -> std::result::Result<crate::operation::get_origin_endpoint::GetOriginEndpointOutput, crate::operation::get_origin_endpoint::GetOriginEndpointError>
106{
107    Ok({
108        #[allow(unused_mut)]
109        let mut output = crate::operation::get_origin_endpoint::builders::GetOriginEndpointOutputBuilder::default();
110        output = crate::protocol_serde::shape_get_origin_endpoint::de_get_origin_endpoint(_response_body, output)
111            .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?;
112        output._set_request_id(::aws_types::request_id::RequestId::request_id(_response_headers).map(str::to_string));
113        crate::serde_util::get_origin_endpoint_output_output_correct_errors(output)
114            .build()
115            .map_err(crate::operation::get_origin_endpoint::GetOriginEndpointError::unhandled)?
116    })
117}
118
119pub(crate) fn de_get_origin_endpoint(
120    value: &[u8],
121    mut builder: crate::operation::get_origin_endpoint::builders::GetOriginEndpointOutputBuilder,
122) -> ::std::result::Result<
123    crate::operation::get_origin_endpoint::builders::GetOriginEndpointOutputBuilder,
124    ::aws_smithy_json::deserialize::error::DeserializeError,
125> {
126    let mut tokens_owned = ::aws_smithy_json::deserialize::json_token_iter(crate::protocol_serde::or_empty_doc(value)).peekable();
127    let tokens = &mut tokens_owned;
128    ::aws_smithy_json::deserialize::token::expect_start_object(tokens.next())?;
129    loop {
130        match tokens.next().transpose()? {
131            Some(::aws_smithy_json::deserialize::Token::EndObject { .. }) => break,
132            Some(::aws_smithy_json::deserialize::Token::ObjectKey { key, .. }) => match key.to_unescaped()?.as_ref() {
133                "Arn" => {
134                    builder = builder.set_arn(
135                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
136                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
137                            .transpose()?,
138                    );
139                }
140                "ChannelGroupName" => {
141                    builder = builder.set_channel_group_name(
142                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
143                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
144                            .transpose()?,
145                    );
146                }
147                "ChannelName" => {
148                    builder = builder.set_channel_name(
149                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
150                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
151                            .transpose()?,
152                    );
153                }
154                "ContainerType" => {
155                    builder = builder.set_container_type(
156                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
157                            .map(|s| s.to_unescaped().map(|u| crate::types::ContainerType::from(u.as_ref())))
158                            .transpose()?,
159                    );
160                }
161                "CreatedAt" => {
162                    builder = builder.set_created_at(::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
163                        tokens.next(),
164                        ::aws_smithy_types::date_time::Format::EpochSeconds,
165                    )?);
166                }
167                "DashManifests" => {
168                    builder = builder.set_dash_manifests(crate::protocol_serde::shape_get_dash_manifests::de_get_dash_manifests(tokens)?);
169                }
170                "Description" => {
171                    builder = builder.set_description(
172                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
173                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
174                            .transpose()?,
175                    );
176                }
177                "ETag" => {
178                    builder = builder.set_e_tag(
179                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
180                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
181                            .transpose()?,
182                    );
183                }
184                "ForceEndpointErrorConfiguration" => {
185                    builder = builder.set_force_endpoint_error_configuration(
186                        crate::protocol_serde::shape_force_endpoint_error_configuration::de_force_endpoint_error_configuration(tokens)?,
187                    );
188                }
189                "HlsManifests" => {
190                    builder = builder.set_hls_manifests(crate::protocol_serde::shape_get_hls_manifests::de_get_hls_manifests(tokens)?);
191                }
192                "LowLatencyHlsManifests" => {
193                    builder = builder.set_low_latency_hls_manifests(
194                        crate::protocol_serde::shape_get_low_latency_hls_manifests::de_get_low_latency_hls_manifests(tokens)?,
195                    );
196                }
197                "ModifiedAt" => {
198                    builder = builder.set_modified_at(::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
199                        tokens.next(),
200                        ::aws_smithy_types::date_time::Format::EpochSeconds,
201                    )?);
202                }
203                "MssManifests" => {
204                    builder = builder.set_mss_manifests(crate::protocol_serde::shape_get_mss_manifests::de_get_mss_manifests(tokens)?);
205                }
206                "OriginEndpointName" => {
207                    builder = builder.set_origin_endpoint_name(
208                        ::aws_smithy_json::deserialize::token::expect_string_or_null(tokens.next())?
209                            .map(|s| s.to_unescaped().map(|u| u.into_owned()))
210                            .transpose()?,
211                    );
212                }
213                "ResetAt" => {
214                    builder = builder.set_reset_at(::aws_smithy_json::deserialize::token::expect_timestamp_or_null(
215                        tokens.next(),
216                        ::aws_smithy_types::date_time::Format::EpochSeconds,
217                    )?);
218                }
219                "Segment" => {
220                    builder = builder.set_segment(crate::protocol_serde::shape_segment::de_segment(tokens)?);
221                }
222                "StartoverWindowSeconds" => {
223                    builder = builder.set_startover_window_seconds(
224                        ::aws_smithy_json::deserialize::token::expect_number_or_null(tokens.next())?
225                            .map(i32::try_from)
226                            .transpose()?,
227                    );
228                }
229                "Tags" => {
230                    builder = builder.set_tags(crate::protocol_serde::shape_tag_map::de_tag_map(tokens)?);
231                }
232                _ => ::aws_smithy_json::deserialize::token::skip_value(tokens)?,
233            },
234            other => {
235                return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(format!(
236                    "expected object key or end object, found: {:?}",
237                    other
238                )))
239            }
240        }
241    }
242    if tokens.next().is_some() {
243        return Err(::aws_smithy_json::deserialize::error::DeserializeError::custom(
244            "found more JSON tokens after completing parsing",
245        ));
246    }
247    Ok(builder)
248}