#[non_exhaustive]pub struct CreateConnectionError {
pub kind: CreateConnectionErrorKind,
/* private fields */
}Expand description
Error type for the CreateConnection 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: CreateConnectionErrorKindKind of error that occurred.
Implementations§
source§impl CreateConnectionError
impl CreateConnectionError
sourcepub fn new(kind: CreateConnectionErrorKind, meta: Error) -> Self
pub fn new(kind: CreateConnectionErrorKind, meta: Error) -> Self
Creates a new CreateConnectionError.
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 CreateConnectionError::Unhandled variant from any error type.
Examples found in repository?
1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503
pub fn parse_create_connection_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::CreateConnectionOutput, crate::error::CreateConnectionError>
{
let generic = crate::json_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateConnectionError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::CreateConnectionError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"DirectConnectClientException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DirectConnectClientException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::direct_connect_client_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_direct_connect_client_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"DirectConnectServerException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DirectConnectServerException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::direct_connect_server_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_direct_connect_server_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"DuplicateTagKeysException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DuplicateTagKeysException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::duplicate_tag_keys_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_duplicate_tag_keys_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"TooManyTagsException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::TooManyTagsException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::too_many_tags_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_too_many_tags_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateConnectionError::generic(generic),
})
}sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the CreateConnectionError::Unhandled variant from a aws_smithy_types::Error.
Examples found in repository?
1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503
pub fn parse_create_connection_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::CreateConnectionOutput, crate::error::CreateConnectionError>
{
let generic = crate::json_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateConnectionError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::CreateConnectionError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"DirectConnectClientException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DirectConnectClientException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::direct_connect_client_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_direct_connect_client_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"DirectConnectServerException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DirectConnectServerException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output =
crate::error::direct_connect_server_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_direct_connect_server_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"DuplicateTagKeysException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::DuplicateTagKeysException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::duplicate_tag_keys_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_duplicate_tag_keys_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"TooManyTagsException" => crate::error::CreateConnectionError {
meta: generic,
kind: crate::error::CreateConnectionErrorKind::TooManyTagsException({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::too_many_tags_exception::Builder::default();
let _ = response;
output = crate::json_deser::deser_structure_crate_error_too_many_tags_exception_json_err(response.body().as_ref(), output).map_err(crate::error::CreateConnectionError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateConnectionError::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_direct_connect_client_exception(&self) -> bool
pub fn is_direct_connect_client_exception(&self) -> bool
Returns true if the error kind is CreateConnectionErrorKind::DirectConnectClientException.
sourcepub fn is_direct_connect_server_exception(&self) -> bool
pub fn is_direct_connect_server_exception(&self) -> bool
Returns true if the error kind is CreateConnectionErrorKind::DirectConnectServerException.
sourcepub fn is_duplicate_tag_keys_exception(&self) -> bool
pub fn is_duplicate_tag_keys_exception(&self) -> bool
Returns true if the error kind is CreateConnectionErrorKind::DuplicateTagKeysException.
Returns true if the error kind is CreateConnectionErrorKind::TooManyTagsException.