aws_sdk_dlm/
error_meta.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2/// All possible error types for this service.
3#[non_exhaustive]
4#[derive(::std::fmt::Debug)]
5pub enum Error {
6    /// <p>The service failed in an unexpected way.</p>
7    InternalServerException(crate::types::error::InternalServerException),
8    /// <p>Bad request. The request is missing required parameters or has invalid parameters.</p>
9    InvalidRequestException(crate::types::error::InvalidRequestException),
10    /// <p>The request failed because a limit was exceeded.</p>
11    LimitExceededException(crate::types::error::LimitExceededException),
12    /// <p>A requested resource was not found.</p>
13    ResourceNotFoundException(crate::types::error::ResourceNotFoundException),
14    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
15    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
16    variable wildcard pattern and check `.code()`:
17     \
18    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
19     \
20    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-Error) for what information is available for the error.")]
21    Unhandled(crate::error::sealed_unhandled::Unhandled),
22}
23impl ::std::fmt::Display for Error {
24    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
25        match self {
26            Error::InternalServerException(inner) => inner.fmt(f),
27            Error::InvalidRequestException(inner) => inner.fmt(f),
28            Error::LimitExceededException(inner) => inner.fmt(f),
29            Error::ResourceNotFoundException(inner) => inner.fmt(f),
30            Error::Unhandled(_) => {
31                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
32                    write!(f, "unhandled error ({code})")
33                } else {
34                    f.write_str("unhandled error")
35                }
36            }
37        }
38    }
39}
40impl From<::aws_smithy_types::error::operation::BuildError> for Error {
41    fn from(value: ::aws_smithy_types::error::operation::BuildError) -> Self {
42        Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
43            source: value.into(),
44            meta: ::std::default::Default::default(),
45        })
46    }
47}
48impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for Error {
49    fn meta(&self) -> &::aws_smithy_types::error::metadata::ErrorMetadata {
50        match self {
51            Self::InternalServerException(inner) => inner.meta(),
52            Self::InvalidRequestException(inner) => inner.meta(),
53            Self::LimitExceededException(inner) => inner.meta(),
54            Self::ResourceNotFoundException(inner) => inner.meta(),
55            Self::Unhandled(inner) => &inner.meta,
56        }
57    }
58}
59impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError, R>> for Error
60where
61    R: Send + Sync + std::fmt::Debug + 'static,
62{
63    fn from(
64        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError, R>,
65    ) -> Self {
66        match err {
67            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
68            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
69                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
70                source: err.into(),
71            }),
72        }
73    }
74}
75impl From<crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError> for Error {
76    fn from(err: crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError) -> Self {
77        match err {
78            crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError::InternalServerException(inner) => {
79                Error::InternalServerException(inner)
80            }
81            crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError::InvalidRequestException(inner) => {
82                Error::InvalidRequestException(inner)
83            }
84            crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError::LimitExceededException(inner) => {
85                Error::LimitExceededException(inner)
86            }
87            crate::operation::create_lifecycle_policy::CreateLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
88        }
89    }
90}
91impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError, R>> for Error
92where
93    R: Send + Sync + std::fmt::Debug + 'static,
94{
95    fn from(
96        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError, R>,
97    ) -> Self {
98        match err {
99            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
100            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
101                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
102                source: err.into(),
103            }),
104        }
105    }
106}
107impl From<crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError> for Error {
108    fn from(err: crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError) -> Self {
109        match err {
110            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::InternalServerException(inner) => {
111                Error::InternalServerException(inner)
112            }
113            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::LimitExceededException(inner) => {
114                Error::LimitExceededException(inner)
115            }
116            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::ResourceNotFoundException(inner) => {
117                Error::ResourceNotFoundException(inner)
118            }
119            crate::operation::delete_lifecycle_policy::DeleteLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
120        }
121    }
122}
123impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError, R>> for Error
124where
125    R: Send + Sync + std::fmt::Debug + 'static,
126{
127    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError, R>) -> Self {
128        match err {
129            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
130            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
131                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
132                source: err.into(),
133            }),
134        }
135    }
136}
137impl From<crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError> for Error {
138    fn from(err: crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError) -> Self {
139        match err {
140            crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError::InternalServerException(inner) => {
141                Error::InternalServerException(inner)
142            }
143            crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError::InvalidRequestException(inner) => {
144                Error::InvalidRequestException(inner)
145            }
146            crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError::LimitExceededException(inner) => {
147                Error::LimitExceededException(inner)
148            }
149            crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError::ResourceNotFoundException(inner) => {
150                Error::ResourceNotFoundException(inner)
151            }
152            crate::operation::get_lifecycle_policies::GetLifecyclePoliciesError::Unhandled(inner) => Error::Unhandled(inner),
153        }
154    }
155}
156impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lifecycle_policy::GetLifecyclePolicyError, R>> for Error
157where
158    R: Send + Sync + std::fmt::Debug + 'static,
159{
160    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::get_lifecycle_policy::GetLifecyclePolicyError, R>) -> Self {
161        match err {
162            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
163            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
164                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
165                source: err.into(),
166            }),
167        }
168    }
169}
170impl From<crate::operation::get_lifecycle_policy::GetLifecyclePolicyError> for Error {
171    fn from(err: crate::operation::get_lifecycle_policy::GetLifecyclePolicyError) -> Self {
172        match err {
173            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::InternalServerException(inner) => Error::InternalServerException(inner),
174            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::LimitExceededException(inner) => Error::LimitExceededException(inner),
175            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::ResourceNotFoundException(inner) => {
176                Error::ResourceNotFoundException(inner)
177            }
178            crate::operation::get_lifecycle_policy::GetLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
179        }
180    }
181}
182impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_tags_for_resource::ListTagsForResourceError, R>> for Error
183where
184    R: Send + Sync + std::fmt::Debug + 'static,
185{
186    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::list_tags_for_resource::ListTagsForResourceError, R>) -> Self {
187        match err {
188            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
189            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
190                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
191                source: err.into(),
192            }),
193        }
194    }
195}
196impl From<crate::operation::list_tags_for_resource::ListTagsForResourceError> for Error {
197    fn from(err: crate::operation::list_tags_for_resource::ListTagsForResourceError) -> Self {
198        match err {
199            crate::operation::list_tags_for_resource::ListTagsForResourceError::InternalServerException(inner) => {
200                Error::InternalServerException(inner)
201            }
202            crate::operation::list_tags_for_resource::ListTagsForResourceError::InvalidRequestException(inner) => {
203                Error::InvalidRequestException(inner)
204            }
205            crate::operation::list_tags_for_resource::ListTagsForResourceError::ResourceNotFoundException(inner) => {
206                Error::ResourceNotFoundException(inner)
207            }
208            crate::operation::list_tags_for_resource::ListTagsForResourceError::Unhandled(inner) => Error::Unhandled(inner),
209        }
210    }
211}
212impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::tag_resource::TagResourceError, R>> for Error
213where
214    R: Send + Sync + std::fmt::Debug + 'static,
215{
216    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::tag_resource::TagResourceError, R>) -> Self {
217        match err {
218            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
219            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
220                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
221                source: err.into(),
222            }),
223        }
224    }
225}
226impl From<crate::operation::tag_resource::TagResourceError> for Error {
227    fn from(err: crate::operation::tag_resource::TagResourceError) -> Self {
228        match err {
229            crate::operation::tag_resource::TagResourceError::InternalServerException(inner) => Error::InternalServerException(inner),
230            crate::operation::tag_resource::TagResourceError::InvalidRequestException(inner) => Error::InvalidRequestException(inner),
231            crate::operation::tag_resource::TagResourceError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
232            crate::operation::tag_resource::TagResourceError::Unhandled(inner) => Error::Unhandled(inner),
233        }
234    }
235}
236impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::untag_resource::UntagResourceError, R>> for Error
237where
238    R: Send + Sync + std::fmt::Debug + 'static,
239{
240    fn from(err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::untag_resource::UntagResourceError, R>) -> Self {
241        match err {
242            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
243            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
244                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
245                source: err.into(),
246            }),
247        }
248    }
249}
250impl From<crate::operation::untag_resource::UntagResourceError> for Error {
251    fn from(err: crate::operation::untag_resource::UntagResourceError) -> Self {
252        match err {
253            crate::operation::untag_resource::UntagResourceError::InternalServerException(inner) => Error::InternalServerException(inner),
254            crate::operation::untag_resource::UntagResourceError::InvalidRequestException(inner) => Error::InvalidRequestException(inner),
255            crate::operation::untag_resource::UntagResourceError::ResourceNotFoundException(inner) => Error::ResourceNotFoundException(inner),
256            crate::operation::untag_resource::UntagResourceError::Unhandled(inner) => Error::Unhandled(inner),
257        }
258    }
259}
260impl<R> From<::aws_smithy_runtime_api::client::result::SdkError<crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError, R>> for Error
261where
262    R: Send + Sync + std::fmt::Debug + 'static,
263{
264    fn from(
265        err: ::aws_smithy_runtime_api::client::result::SdkError<crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError, R>,
266    ) -> Self {
267        match err {
268            ::aws_smithy_runtime_api::client::result::SdkError::ServiceError(context) => Self::from(context.into_err()),
269            _ => Error::Unhandled(crate::error::sealed_unhandled::Unhandled {
270                meta: ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(&err).clone(),
271                source: err.into(),
272            }),
273        }
274    }
275}
276impl From<crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError> for Error {
277    fn from(err: crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError) -> Self {
278        match err {
279            crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError::InternalServerException(inner) => {
280                Error::InternalServerException(inner)
281            }
282            crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError::InvalidRequestException(inner) => {
283                Error::InvalidRequestException(inner)
284            }
285            crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError::LimitExceededException(inner) => {
286                Error::LimitExceededException(inner)
287            }
288            crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError::ResourceNotFoundException(inner) => {
289                Error::ResourceNotFoundException(inner)
290            }
291            crate::operation::update_lifecycle_policy::UpdateLifecyclePolicyError::Unhandled(inner) => Error::Unhandled(inner),
292        }
293    }
294}
295impl ::std::error::Error for Error {
296    fn source(&self) -> std::option::Option<&(dyn ::std::error::Error + 'static)> {
297        match self {
298            Error::InternalServerException(inner) => inner.source(),
299            Error::InvalidRequestException(inner) => inner.source(),
300            Error::LimitExceededException(inner) => inner.source(),
301            Error::ResourceNotFoundException(inner) => inner.source(),
302            Error::Unhandled(inner) => ::std::option::Option::Some(&*inner.source),
303        }
304    }
305}
306impl ::aws_types::request_id::RequestId for Error {
307    fn request_id(&self) -> Option<&str> {
308        match self {
309            Self::InternalServerException(e) => e.request_id(),
310            Self::InvalidRequestException(e) => e.request_id(),
311            Self::LimitExceededException(e) => e.request_id(),
312            Self::ResourceNotFoundException(e) => e.request_id(),
313            Self::Unhandled(e) => e.meta.request_id(),
314        }
315    }
316}