Struct aws_sdk_s3::error::PutObjectError
source · #[non_exhaustive]pub struct PutObjectError {
pub kind: PutObjectErrorKind,
/* private fields */
}
Expand description
Error type for the PutObject
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: PutObjectErrorKind
Kind of error that occurred.
Implementations§
source§impl PutObjectError
impl PutObjectError
sourcepub fn new(kind: PutObjectErrorKind, meta: Error) -> Self
pub fn new(kind: PutObjectErrorKind, meta: Error) -> Self
Creates a new PutObjectError
.
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 PutObjectError::Unhandled
variant from any error type.
Examples found in repository?
src/operation_deser.rs (line 3476)
3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578
pub fn parse_put_object_response(
response: &http::Response<bytes::Bytes>,
) -> std::result::Result<crate::output::PutObjectOutput, crate::error::PutObjectError> {
Ok({
#[allow(unused_mut)]
let mut output = crate::output::put_object_output::Builder::default();
let _ = response;
output = output.set_bucket_key_enabled(
crate::http_serde::deser_header_put_object_put_object_output_bucket_key_enabled(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse BucketKeyEnabled from header `x-amz-server-side-encryption-bucket-key-enabled"))?
);
output = output.set_checksum_crc32(
crate::http_serde::deser_header_put_object_put_object_output_checksum_crc32(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse ChecksumCRC32 from header `x-amz-checksum-crc32",
)
})?,
);
output = output.set_checksum_crc32_c(
crate::http_serde::deser_header_put_object_put_object_output_checksum_crc32_c(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse ChecksumCRC32C from header `x-amz-checksum-crc32c",
)
})?,
);
output = output.set_checksum_sha1(
crate::http_serde::deser_header_put_object_put_object_output_checksum_sha1(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse ChecksumSHA1 from header `x-amz-checksum-sha1",
)
})?,
);
output = output.set_checksum_sha256(
crate::http_serde::deser_header_put_object_put_object_output_checksum_sha256(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse ChecksumSHA256 from header `x-amz-checksum-sha256",
)
})?,
);
output = output.set_e_tag(
crate::http_serde::deser_header_put_object_put_object_output_e_tag(response.headers())
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse ETag from header `ETag",
)
})?,
);
output = output.set_expiration(
crate::http_serde::deser_header_put_object_put_object_output_expiration(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse Expiration from header `x-amz-expiration",
)
})?,
);
output = output.set_request_charged(
crate::http_serde::deser_header_put_object_put_object_output_request_charged(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse RequestCharged from header `x-amz-request-charged",
)
})?,
);
output = output.set_sse_customer_algorithm(
crate::http_serde::deser_header_put_object_put_object_output_sse_customer_algorithm(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse SSECustomerAlgorithm from header `x-amz-server-side-encryption-customer-algorithm"))?
);
output = output.set_sse_customer_key_md5(
crate::http_serde::deser_header_put_object_put_object_output_sse_customer_key_md5(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse SSECustomerKeyMD5 from header `x-amz-server-side-encryption-customer-key-MD5"))?
);
output = output.set_ssekms_encryption_context(
crate::http_serde::deser_header_put_object_put_object_output_ssekms_encryption_context(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse SSEKMSEncryptionContext from header `x-amz-server-side-encryption-context"))?
);
output = output.set_ssekms_key_id(
crate::http_serde::deser_header_put_object_put_object_output_ssekms_key_id(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse SSEKMSKeyId from header `x-amz-server-side-encryption-aws-kms-key-id"))?
);
output = output.set_server_side_encryption(
crate::http_serde::deser_header_put_object_put_object_output_server_side_encryption(response.headers())
.map_err(|_|crate::error::PutObjectError::unhandled("Failed to parse ServerSideEncryption from header `x-amz-server-side-encryption"))?
);
output = output.set_version_id(
crate::http_serde::deser_header_put_object_put_object_output_version_id(
response.headers(),
)
.map_err(|_| {
crate::error::PutObjectError::unhandled(
"Failed to parse VersionId from header `x-amz-version-id",
)
})?,
);
output.build()
})
}
sourcepub fn generic(err: Error) -> Self
pub fn generic(err: Error) -> Self
Creates the PutObjectError::Unhandled
variant from a aws_smithy_types::Error
.
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.
Trait Implementations§
source§impl Debug for PutObjectError
impl Debug for PutObjectError
source§impl Display for PutObjectError
impl Display for PutObjectError
source§impl Error for PutObjectError
impl Error for PutObjectError
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<PutObjectError> for Error
impl From<PutObjectError> for Error
source§fn from(err: PutObjectError) -> Self
fn from(err: PutObjectError) -> Self
Converts to this type from the input type.