#[non_exhaustive]
pub struct GetObjectAttributesError { pub kind: GetObjectAttributesErrorKind, /* private fields */ }
Expand description

Error type for the GetObjectAttributes operation.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§kind: GetObjectAttributesErrorKind

Kind of error that occurred.

Implementations§

Creates a new GetObjectAttributesError.

Creates the GetObjectAttributesError::Unhandled variant from any error type.

Examples found in repository?
src/operation_deser.rs (line 1951)
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
pub fn parse_get_object_attributes_error(
    response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
    crate::output::GetObjectAttributesOutput,
    crate::error::GetObjectAttributesError,
> {
    let generic = crate::xml_deser::parse_http_generic_error(response)
        .map_err(crate::error::GetObjectAttributesError::unhandled)?;
    let error_code = match generic.code() {
        Some(code) => code,
        None => return Err(crate::error::GetObjectAttributesError::unhandled(generic)),
    };

    let _error_message = generic.message().map(|msg| msg.to_owned());
    Err(match error_code {
        "NoSuchKey" => crate::error::GetObjectAttributesError {
            meta: generic,
            kind: crate::error::GetObjectAttributesErrorKind::NoSuchKey({
                #[allow(unused_mut)]
                let mut tmp = {
                    #[allow(unused_mut)]
                    let mut output = crate::error::no_such_key::Builder::default();
                    let _ = response;
                    output = crate::xml_deser::deser_structure_crate_error_no_such_key_xml_err(
                        response.body().as_ref(),
                        output,
                    )
                    .map_err(crate::error::GetObjectAttributesError::unhandled)?;
                    output.build()
                };
                if tmp.message.is_none() {
                    tmp.message = _error_message;
                }
                tmp
            }),
        },
        _ => crate::error::GetObjectAttributesError::generic(generic),
    })
}

#[allow(clippy::unnecessary_wraps)]
pub fn parse_get_object_attributes_response(
    response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
    crate::output::GetObjectAttributesOutput,
    crate::error::GetObjectAttributesError,
> {
    Ok({
        #[allow(unused_mut)]
        let mut output = crate::output::get_object_attributes_output::Builder::default();
        let _ = response;
        output = crate::xml_deser::deser_operation_crate_operation_get_object_attributes(
            response.body().as_ref(),
            output,
        )
        .map_err(crate::error::GetObjectAttributesError::unhandled)?;
        output = output.set_delete_marker(
            crate::http_serde::deser_header_get_object_attributes_get_object_attributes_output_delete_marker(response.headers())
                                    .map_err(|_|crate::error::GetObjectAttributesError::unhandled("Failed to parse DeleteMarker from header `x-amz-delete-marker"))?
        );
        output = output.set_last_modified(
            crate::http_serde::deser_header_get_object_attributes_get_object_attributes_output_last_modified(response.headers())
                                    .map_err(|_|crate::error::GetObjectAttributesError::unhandled("Failed to parse LastModified from header `Last-Modified"))?
        );
        output = output.set_request_charged(
            crate::http_serde::deser_header_get_object_attributes_get_object_attributes_output_request_charged(response.headers())
                                    .map_err(|_|crate::error::GetObjectAttributesError::unhandled("Failed to parse RequestCharged from header `x-amz-request-charged"))?
        );
        output = output.set_version_id(
            crate::http_serde::deser_header_get_object_attributes_get_object_attributes_output_version_id(response.headers())
                                    .map_err(|_|crate::error::GetObjectAttributesError::unhandled("Failed to parse VersionId from header `x-amz-version-id"))?
        );
        output.build()
    })
}

Creates the GetObjectAttributesError::Unhandled variant from a aws_smithy_types::Error.

Examples found in repository?
src/operation_deser.rs (line 1977)
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
pub fn parse_get_object_attributes_error(
    response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
    crate::output::GetObjectAttributesOutput,
    crate::error::GetObjectAttributesError,
> {
    let generic = crate::xml_deser::parse_http_generic_error(response)
        .map_err(crate::error::GetObjectAttributesError::unhandled)?;
    let error_code = match generic.code() {
        Some(code) => code,
        None => return Err(crate::error::GetObjectAttributesError::unhandled(generic)),
    };

    let _error_message = generic.message().map(|msg| msg.to_owned());
    Err(match error_code {
        "NoSuchKey" => crate::error::GetObjectAttributesError {
            meta: generic,
            kind: crate::error::GetObjectAttributesErrorKind::NoSuchKey({
                #[allow(unused_mut)]
                let mut tmp = {
                    #[allow(unused_mut)]
                    let mut output = crate::error::no_such_key::Builder::default();
                    let _ = response;
                    output = crate::xml_deser::deser_structure_crate_error_no_such_key_xml_err(
                        response.body().as_ref(),
                        output,
                    )
                    .map_err(crate::error::GetObjectAttributesError::unhandled)?;
                    output.build()
                };
                if tmp.message.is_none() {
                    tmp.message = _error_message;
                }
                tmp
            }),
        },
        _ => crate::error::GetObjectAttributesError::generic(generic),
    })
}

Returns the error message if one is available.

Returns error metadata, which includes the error code, message, request ID, and potentially additional information.

Returns the request ID if it’s available.

Returns the error code if it’s available.

Examples found in repository?
src/error.rs (line 5124)
5123
5124
5125
    fn code(&self) -> Option<&str> {
        GetObjectAttributesError::code(self)
    }

Returns true if the error kind is GetObjectAttributesErrorKind::NoSuchKey.

Trait Implementations§

Creates an unhandled error variant with the given source.
Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Returns the code for this error if one exists
Returns the ErrorKind when the error is modeled as retryable Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
Should always be Self
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more