aws_sdk_cloudfront/protocol_serde/
shape_create_invalidation_output.rs1pub(crate) fn de_invalidation_payload(
3 body: &[u8],
4) -> std::result::Result<::std::option::Option<crate::types::Invalidation>, crate::operation::create_invalidation::CreateInvalidationError> {
5 (!body.is_empty())
6 .then(|| {
7 crate::protocol_serde::shape_create_invalidation_output::de_invalidation(body)
8 .map_err(crate::operation::create_invalidation::CreateInvalidationError::unhandled)
9 })
10 .transpose()
11}
12
13pub(crate) fn de_location_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("Location");
17 ::aws_smithy_http::header::one_or_none(headers)
18}
19
20pub fn de_invalidation(inp: &[u8]) -> std::result::Result<crate::types::Invalidation, ::aws_smithy_xml::decode::XmlDecodeError> {
21 let mut doc = ::aws_smithy_xml::decode::Document::try_from(inp)?;
22 #[allow(unused_mut)]
23 let mut decoder = doc.root_element()?;
24 let start_el = decoder.start_el();
25 if !(start_el.matches("Invalidation")) {
26 return Err(::aws_smithy_xml::decode::XmlDecodeError::custom(format!(
27 "invalid root, expected Invalidation got {:?}",
28 start_el
29 )));
30 }
31 crate::protocol_serde::shape_invalidation::de_invalidation(&mut decoder)
32}