Skip to main content

aws_sdk_cloudfront/protocol_serde/
shape_copy_distribution_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub(crate) fn de_distribution_payload(
3    body: &[u8],
4) -> std::result::Result<::std::option::Option<crate::types::Distribution>, crate::operation::copy_distribution::CopyDistributionError> {
5    (!body.is_empty())
6        .then(|| {
7            crate::protocol_serde::shape_copy_distribution_output::de_distribution(body)
8                .map_err(crate::operation::copy_distribution::CopyDistributionError::unhandled)
9        })
10        .transpose()
11}
12
13pub(crate) fn de_e_tag_header(
14    header_map: &::aws_smithy_runtime_api::http::Headers,
15) -> ::std::result::Result<::std::option::Option<::std::string::String>, ::aws_smithy_http::header::ParseError> {
16    let headers = header_map.get_all("ETag");
17    ::aws_smithy_http::header::one_or_none(headers)
18}
19
20pub(crate) fn de_location_header(
21    header_map: &::aws_smithy_runtime_api::http::Headers,
22) -> ::std::result::Result<::std::option::Option<::std::string::String>, ::aws_smithy_http::header::ParseError> {
23    let headers = header_map.get_all("Location");
24    ::aws_smithy_http::header::one_or_none(headers)
25}
26
27pub fn de_distribution(inp: &[u8]) -> std::result::Result<crate::types::Distribution, ::aws_smithy_xml::decode::XmlDecodeError> {
28    let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?;
29    #[allow(unused_mut)]
30    let mut decoder = doc.root_element()?;
31    let start_el = decoder.start_el();
32    if !(start_el.matches("Distribution")) {
33        return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!(
34            "invalid root, expected Distribution got {start_el:?}"
35        )));
36    }
37    crate::protocol_serde::shape_distribution::de_distribution(&mut decoder)
38}