#[non_exhaustive]pub struct CreateUsageReportSubscriptionError {
pub kind: CreateUsageReportSubscriptionErrorKind,
/* private fields */
}
Expand description
Error type for the CreateUsageReportSubscription
operation.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.kind: CreateUsageReportSubscriptionErrorKind
Kind of error that occurred.
Implementations§
source§impl CreateUsageReportSubscriptionError
impl CreateUsageReportSubscriptionError
sourcepub fn new(kind: CreateUsageReportSubscriptionErrorKind, meta: Error) -> Self
pub fn new(kind: CreateUsageReportSubscriptionErrorKind, meta: Error) -> Self
Creates a new CreateUsageReportSubscriptionError
.
sourcepub fn unhandled(err: impl Into<Box<dyn Error + Send + Sync + 'static>>) -> Self
pub fn unhandled(err: impl Into<Box<dyn Error + Send + Sync + 'static>>) -> Self
Creates the CreateUsageReportSubscriptionError::Unhandled
variant from any error type.
Examples found in repository?
2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162
pub fn parse_create_usage_report_subscription_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
crate::output::CreateUsageReportSubscriptionOutput,
crate::error::CreateUsageReportSubscriptionError,
> {
let generic = crate::json_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => {
return Err(crate::error::CreateUsageReportSubscriptionError::unhandled(
generic,
))
}
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"InvalidAccountStatusException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind:
crate::error::CreateUsageReportSubscriptionErrorKind::InvalidAccountStatusException(
{
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::invalid_account_status_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_invalid_account_status_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
},
),
},
"InvalidRoleException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind: crate::error::CreateUsageReportSubscriptionErrorKind::InvalidRoleException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::invalid_role_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_invalid_role_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"LimitExceededException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind: crate::error::CreateUsageReportSubscriptionErrorKind::LimitExceededException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_limit_exceeded_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateUsageReportSubscriptionError::generic(generic),
})
}
sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the CreateUsageReportSubscriptionError::Unhandled
variant from a aws_smithy_types::Error
.
Examples found in repository?
2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162
pub fn parse_create_usage_report_subscription_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
crate::output::CreateUsageReportSubscriptionOutput,
crate::error::CreateUsageReportSubscriptionError,
> {
let generic = crate::json_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => {
return Err(crate::error::CreateUsageReportSubscriptionError::unhandled(
generic,
))
}
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"InvalidAccountStatusException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind:
crate::error::CreateUsageReportSubscriptionErrorKind::InvalidAccountStatusException(
{
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::invalid_account_status_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_invalid_account_status_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
},
),
},
"InvalidRoleException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind: crate::error::CreateUsageReportSubscriptionErrorKind::InvalidRoleException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::invalid_role_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_invalid_role_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"LimitExceededException" => crate::error::CreateUsageReportSubscriptionError {
meta: generic,
kind: crate::error::CreateUsageReportSubscriptionErrorKind::LimitExceededException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_limit_exceeded_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateUsageReportSubscriptionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateUsageReportSubscriptionError::generic(generic),
})
}
sourcepub fn meta(&self) -> &Error
pub fn meta(&self) -> &Error
Returns error metadata, which includes the error code, message, request ID, and potentially additional information.
sourcepub fn request_id(&self) -> Option<&str>
pub fn request_id(&self) -> Option<&str>
Returns the request ID if it’s available.
sourcepub fn is_invalid_account_status_exception(&self) -> bool
pub fn is_invalid_account_status_exception(&self) -> bool
Returns true
if the error kind is CreateUsageReportSubscriptionErrorKind::InvalidAccountStatusException
.
sourcepub fn is_invalid_role_exception(&self) -> bool
pub fn is_invalid_role_exception(&self) -> bool
Returns true
if the error kind is CreateUsageReportSubscriptionErrorKind::InvalidRoleException
.
sourcepub fn is_limit_exceeded_exception(&self) -> bool
pub fn is_limit_exceeded_exception(&self) -> bool
Returns true
if the error kind is CreateUsageReportSubscriptionErrorKind::LimitExceededException
.