Struct aws_sdk_s3::error::CreateBucketError
source · #[non_exhaustive]pub struct CreateBucketError {
pub kind: CreateBucketErrorKind,
/* private fields */
}
Expand description
Error type for the CreateBucket
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: CreateBucketErrorKind
Kind of error that occurred.
Implementations§
source§impl CreateBucketError
impl CreateBucketError
sourcepub fn new(kind: CreateBucketErrorKind, meta: Error) -> Self
pub fn new(kind: CreateBucketErrorKind, meta: Error) -> Self
Creates a new CreateBucketError
.
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 CreateBucketError::Unhandled
variant from any error type.
Examples found in repository?
src/operation_deser.rs (line 242)
235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305
pub fn parse_create_bucket_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::CreateBucketOutput, crate::error::CreateBucketError> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateBucketError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::CreateBucketError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"BucketAlreadyExists" => crate::error::CreateBucketError {
meta: generic,
kind: crate::error::CreateBucketErrorKind::BucketAlreadyExists({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::bucket_already_exists::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_bucket_already_exists_xml_err(response.body().as_ref(), output).map_err(crate::error::CreateBucketError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"BucketAlreadyOwnedByYou" => crate::error::CreateBucketError {
meta: generic,
kind: crate::error::CreateBucketErrorKind::BucketAlreadyOwnedByYou({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::bucket_already_owned_by_you::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_bucket_already_owned_by_you_xml_err(response.body().as_ref(), output).map_err(crate::error::CreateBucketError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateBucketError::generic(generic),
})
}
#[allow(clippy::unnecessary_wraps)]
pub fn parse_create_bucket_response(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::CreateBucketOutput, crate::error::CreateBucketError> {
Ok({
#[allow(unused_mut)]
let mut output = crate::output::create_bucket_output::Builder::default();
let _ = response;
output = output.set_location(
crate::http_serde::deser_header_create_bucket_create_bucket_output_location(
response.headers(),
)
.map_err(|_| {
crate::error::CreateBucketError::unhandled(
"Failed to parse Location from header `Location",
)
})?,
);
output.build()
})
}
sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the CreateBucketError::Unhandled
variant from a aws_smithy_types::Error
.
Examples found in repository?
src/operation_deser.rs (line 281)
235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283
pub fn parse_create_bucket_error(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::CreateBucketOutput, crate::error::CreateBucketError> {
let generic = crate::xml_deser::parse_http_generic_error(response)
.map_err(crate::error::CreateBucketError::unhandled)?;
let error_code = match generic.code() {
Some(code) => code,
None => return Err(crate::error::CreateBucketError::unhandled(generic)),
};
let _error_message = generic.message().map(|msg| msg.to_owned());
Err(match error_code {
"BucketAlreadyExists" => crate::error::CreateBucketError {
meta: generic,
kind: crate::error::CreateBucketErrorKind::BucketAlreadyExists({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::bucket_already_exists::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_bucket_already_exists_xml_err(response.body().as_ref(), output).map_err(crate::error::CreateBucketError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
"BucketAlreadyOwnedByYou" => crate::error::CreateBucketError {
meta: generic,
kind: crate::error::CreateBucketErrorKind::BucketAlreadyOwnedByYou({
#[allow(unused_mut)]
let mut tmp = {
#[allow(unused_mut)]
let mut output = crate::error::bucket_already_owned_by_you::Builder::default();
let _ = response;
output = crate::xml_deser::deser_structure_crate_error_bucket_already_owned_by_you_xml_err(response.body().as_ref(), output).map_err(crate::error::CreateBucketError::unhandled)?;
output.build()
};
if tmp.message.is_none() {
tmp.message = _error_message;
}
tmp
}),
},
_ => crate::error::CreateBucketError::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_bucket_already_exists(&self) -> bool
pub fn is_bucket_already_exists(&self) -> bool
Returns true
if the error kind is CreateBucketErrorKind::BucketAlreadyExists
.
sourcepub fn is_bucket_already_owned_by_you(&self) -> bool
pub fn is_bucket_already_owned_by_you(&self) -> bool
Returns true
if the error kind is CreateBucketErrorKind::BucketAlreadyOwnedByYou
.
Trait Implementations§
source§impl Debug for CreateBucketError
impl Debug for CreateBucketError
source§impl Display for CreateBucketError
impl Display for CreateBucketError
source§impl Error for CreateBucketError
impl Error for CreateBucketError
source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
The lower-level source of this error, if any. Read more
1.0.0 · source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
source§impl From<CreateBucketError> for Error
impl From<CreateBucketError> for Error
source§fn from(err: CreateBucketError) -> Self
fn from(err: CreateBucketError) -> Self
Converts to this type from the input type.