#[non_exhaustive]pub struct PutNotificationConfigurationError {
pub kind: PutNotificationConfigurationErrorKind,
/* private fields */
}Expand description
Error type for the PutNotificationConfiguration 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: PutNotificationConfigurationErrorKindKind of error that occurred.
Implementations§
source§impl PutNotificationConfigurationError
impl PutNotificationConfigurationError
sourcepub fn new(kind: PutNotificationConfigurationErrorKind, meta: Error) -> Self
pub fn new(kind: PutNotificationConfigurationErrorKind, meta: Error) -> Self
Creates a new PutNotificationConfigurationError.
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 PutNotificationConfigurationError::Unhandled variant from any error type.
Examples found in repository?
3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479
pub fn parse_put_notification_configuration_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
crate::output::PutNotificationConfigurationOutput,
crate::error::PutNotificationConfigurationError,
> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => {
return Err(crate::error::PutNotificationConfigurationError::unhandled(
generic,
))
}
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"LimitExceeded" => {
crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::LimitExceededFault({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_fault::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_limit_exceeded_fault_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
}
}
"ResourceContention" => crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::ResourceContentionFault({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::resource_contention_fault::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_resource_contention_fault_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"ServiceLinkedRoleFailure" => crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::ServiceLinkedRoleFailure({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::service_linked_role_failure::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_service_linked_role_failure_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::PutNotificationConfigurationError::generic(generic),
})
}sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the PutNotificationConfigurationError::Unhandled variant from a aws_smithy_types::Error.
Examples found in repository?
3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479
pub fn parse_put_notification_configuration_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<
crate::output::PutNotificationConfigurationOutput,
crate::error::PutNotificationConfigurationError,
> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => {
return Err(crate::error::PutNotificationConfigurationError::unhandled(
generic,
))
}
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"LimitExceeded" => {
crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::LimitExceededFault({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::limit_exceeded_fault::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_limit_exceeded_fault_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
}
}
"ResourceContention" => crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::ResourceContentionFault({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::resource_contention_fault::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_resource_contention_fault_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"ServiceLinkedRoleFailure" => crate::error::PutNotificationConfigurationError {
meta: generic,
kind: crate::error::PutNotificationConfigurationErrorKind::ServiceLinkedRoleFailure({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::service_linked_role_failure::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_service_linked_role_failure_xml_err(response.body().as_ref(), output).map_err(crate::error::PutNotificationConfigurationError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::PutNotificationConfigurationError::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_limit_exceeded_fault(&self) -> bool
pub fn is_limit_exceeded_fault(&self) -> bool
Returns true if the error kind is PutNotificationConfigurationErrorKind::LimitExceededFault.
sourcepub fn is_resource_contention_fault(&self) -> bool
pub fn is_resource_contention_fault(&self) -> bool
Returns true if the error kind is PutNotificationConfigurationErrorKind::ResourceContentionFault.
sourcepub fn is_service_linked_role_failure(&self) -> bool
pub fn is_service_linked_role_failure(&self) -> bool
Returns true if the error kind is PutNotificationConfigurationErrorKind::ServiceLinkedRoleFailure.