Struct aws_sdk_s3::operation::head_object::HeadObjectOutput

source ·
#[non_exhaustive]
pub struct HeadObjectOutput {
Show 34 fields pub delete_marker: Option<bool>, pub accept_ranges: Option<String>, pub expiration: Option<String>, pub restore: Option<String>, pub archive_status: Option<ArchiveStatus>, pub last_modified: Option<DateTime>, pub content_length: Option<i64>, pub checksum_crc32: Option<String>, pub checksum_crc32_c: Option<String>, pub checksum_sha1: Option<String>, pub checksum_sha256: Option<String>, pub e_tag: Option<String>, pub missing_meta: Option<i32>, pub version_id: Option<String>, pub cache_control: Option<String>, pub content_disposition: Option<String>, pub content_encoding: Option<String>, pub content_language: Option<String>, pub content_type: Option<String>, pub expires: Option<DateTime>, pub website_redirect_location: Option<String>, pub server_side_encryption: Option<ServerSideEncryption>, pub metadata: Option<HashMap<String, String>>, pub sse_customer_algorithm: Option<String>, pub sse_customer_key_md5: Option<String>, pub ssekms_key_id: Option<String>, pub bucket_key_enabled: Option<bool>, pub storage_class: Option<StorageClass>, pub request_charged: Option<RequestCharged>, pub replication_status: Option<ReplicationStatus>, pub parts_count: Option<i32>, pub object_lock_mode: Option<ObjectLockMode>, pub object_lock_retain_until_date: Option<DateTime>, pub object_lock_legal_hold_status: Option<ObjectLockLegalHoldStatus>, /* private fields */
}

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.
§delete_marker: Option<bool>

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

This functionality is not supported for directory buckets.

§accept_ranges: Option<String>

Indicates that a range of bytes was specified.

§expiration: Option<String>

If the object expiration is configured (see PutBucketLifecycleConfiguration ), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

This functionality is not supported for directory buckets.

§restore: Option<String>

If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:

x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"

If the object restoration is in progress, the header returns the value ongoing-request="true".

For more information about archiving objects, see Transitioning Objects: General Considerations.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

§archive_status: Option<ArchiveStatus>

The archive state of the head object.

This functionality is not supported for directory buckets.

§last_modified: Option<DateTime>

Date and time when the object was last modified.

§content_length: Option<i64>

Size of the body in bytes.

§checksum_crc32: Option<String>

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

§checksum_crc32_c: Option<String>

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

§checksum_sha1: Option<String>

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

§checksum_sha256: Option<String>

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

§e_tag: Option<String>

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

§missing_meta: Option<i32>

This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

This functionality is not supported for directory buckets.

§version_id: Option<String>

Version ID of the object.

This functionality is not supported for directory buckets.

§cache_control: Option<String>

Specifies caching behavior along the request/reply chain.

§content_disposition: Option<String>

Specifies presentational information for the object.

§content_encoding: Option<String>

Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

§content_language: Option<String>

The language the content is in.

§content_type: Option<String>

A standard MIME type describing the format of the object data.

§expires: Option<DateTime>

The date and time at which the object is no longer cacheable.

§website_redirect_location: Option<String>

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

This functionality is not supported for directory buckets.

§server_side_encryption: Option<ServerSideEncryption>

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

§metadata: Option<HashMap<String, String>>

A map of metadata to store with the object in S3.

§sse_customer_algorithm: Option<String>

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

§sse_customer_key_md5: Option<String>

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

§ssekms_key_id: Option<String>

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

§bucket_key_enabled: Option<bool>

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

§storage_class: Option<StorageClass>

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

§request_charged: Option<RequestCharged>

If present, indicates that the requester was successfully charged for the request.

This functionality is not supported for directory buckets.

§replication_status: Option<ReplicationStatus>

Amazon S3 can return this header if your request involves a bucket that is either a source or a destination in a replication rule.

In replication, you have a source bucket on which you configure replication and destination bucket or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will return the x-amz-replication-status header in the response as follows:

  • If requesting an object from the source bucket, Amazon S3 will return the x-amz-replication-status header if the object in your request is eligible for replication.

    For example, suppose that in your replication configuration, you specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating object replication status.

  • If requesting an object from a destination bucket, Amazon S3 will return the x-amz-replication-status header with value REPLICA if the object in your request is a replica that Amazon S3 created and there is no replica modification replication in progress.

  • When replicating objects to multiple destination buckets, the x-amz-replication-status header acts differently. The header of the source object will only return a value of COMPLETED when replication is successful to all destinations. The header will remain at value PENDING until replication has completed for all destinations. If one or more destinations fails replication the header will return FAILED.

For more information, see Replication.

This functionality is not supported for directory buckets.

§parts_count: Option<i32>

The count of parts this object has. This value is only returned if you specify partNumber in your request and the object was uploaded as a multipart upload.

§object_lock_mode: Option<ObjectLockMode>

The Object Lock mode, if any, that's in effect for this object. This header is only returned if the requester has the s3:GetObjectRetention permission. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

§object_lock_retain_until_date: Option<DateTime>

The date and time when the Object Lock retention period expires. This header is only returned if the requester has the s3:GetObjectRetention permission.

This functionality is not supported for directory buckets.

§object_lock_legal_hold_status: Option<ObjectLockLegalHoldStatus>

Specifies whether a legal hold is in effect for this object. This header is only returned if the requester has the s3:GetObjectLegalHold permission. This header is not returned if the specified version of this object has never had a legal hold applied. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

Implementations§

source§

impl HeadObjectOutput

source

pub fn delete_marker(&self) -> Option<bool>

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

This functionality is not supported for directory buckets.

source

pub fn accept_ranges(&self) -> Option<&str>

Indicates that a range of bytes was specified.

source

pub fn expiration(&self) -> Option<&str>

If the object expiration is configured (see PutBucketLifecycleConfiguration ), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

This functionality is not supported for directory buckets.

source

pub fn restore(&self) -> Option<&str>

If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:

x-amz-restore: ongoing-request="false", expiry-date="Fri, 21 Dec 2012 00:00:00 GMT"

If the object restoration is in progress, the header returns the value ongoing-request="true".

For more information about archiving objects, see Transitioning Objects: General Considerations.

This functionality is not supported for directory buckets. Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

source

pub fn archive_status(&self) -> Option<&ArchiveStatus>

The archive state of the head object.

This functionality is not supported for directory buckets.

source

pub fn last_modified(&self) -> Option<&DateTime>

Date and time when the object was last modified.

source

pub fn content_length(&self) -> Option<i64>

Size of the body in bytes.

source

pub fn checksum_crc32(&self) -> Option<&str>

The base64-encoded, 32-bit CRC32 checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

source

pub fn checksum_crc32_c(&self) -> Option<&str>

The base64-encoded, 32-bit CRC32C checksum of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

source

pub fn checksum_sha1(&self) -> Option<&str>

The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

source

pub fn checksum_sha256(&self) -> Option<&str>

The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

source

pub fn e_tag(&self) -> Option<&str>

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

source

pub fn missing_meta(&self) -> Option<i32>

This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

This functionality is not supported for directory buckets.

source

pub fn version_id(&self) -> Option<&str>

Version ID of the object.

This functionality is not supported for directory buckets.

source

pub fn cache_control(&self) -> Option<&str>

Specifies caching behavior along the request/reply chain.

source

pub fn content_disposition(&self) -> Option<&str>

Specifies presentational information for the object.

source

pub fn content_encoding(&self) -> Option<&str>

Indicates what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

source

pub fn content_language(&self) -> Option<&str>

The language the content is in.

source

pub fn content_type(&self) -> Option<&str>

A standard MIME type describing the format of the object data.

source

pub fn expires(&self) -> Option<&DateTime>

The date and time at which the object is no longer cacheable.

source

pub fn website_redirect_location(&self) -> Option<&str>

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

This functionality is not supported for directory buckets.

source

pub fn server_side_encryption(&self) -> Option<&ServerSideEncryption>

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256, aws:kms, aws:kms:dsse).

For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (AES256) is supported.

source

pub fn metadata(&self) -> Option<&HashMap<String, String>>

A map of metadata to store with the object in S3.

source

pub fn sse_customer_algorithm(&self) -> Option<&str>

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that's used.

This functionality is not supported for directory buckets.

source

pub fn sse_customer_key_md5(&self) -> Option<&str>

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide the round-trip message integrity verification of the customer-provided encryption key.

This functionality is not supported for directory buckets.

source

pub fn ssekms_key_id(&self) -> Option<&str>

If present, indicates the ID of the Key Management Service (KMS) symmetric encryption customer managed key that was used for the object.

This functionality is not supported for directory buckets.

source

pub fn bucket_key_enabled(&self) -> Option<bool>

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

This functionality is not supported for directory buckets.

source

pub fn storage_class(&self) -> Option<&StorageClass>

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

For more information, see Storage Classes.

Directory buckets - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.

source

pub fn request_charged(&self) -> Option<&RequestCharged>

If present, indicates that the requester was successfully charged for the request.

This functionality is not supported for directory buckets.

source

pub fn replication_status(&self) -> Option<&ReplicationStatus>

Amazon S3 can return this header if your request involves a bucket that is either a source or a destination in a replication rule.

In replication, you have a source bucket on which you configure replication and destination bucket or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will return the x-amz-replication-status header in the response as follows:

  • If requesting an object from the source bucket, Amazon S3 will return the x-amz-replication-status header if the object in your request is eligible for replication.

    For example, suppose that in your replication configuration, you specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating object replication status.

  • If requesting an object from a destination bucket, Amazon S3 will return the x-amz-replication-status header with value REPLICA if the object in your request is a replica that Amazon S3 created and there is no replica modification replication in progress.

  • When replicating objects to multiple destination buckets, the x-amz-replication-status header acts differently. The header of the source object will only return a value of COMPLETED when replication is successful to all destinations. The header will remain at value PENDING until replication has completed for all destinations. If one or more destinations fails replication the header will return FAILED.

For more information, see Replication.

This functionality is not supported for directory buckets.

source

pub fn parts_count(&self) -> Option<i32>

The count of parts this object has. This value is only returned if you specify partNumber in your request and the object was uploaded as a multipart upload.

source

pub fn object_lock_mode(&self) -> Option<&ObjectLockMode>

The Object Lock mode, if any, that's in effect for this object. This header is only returned if the requester has the s3:GetObjectRetention permission. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

source

pub fn object_lock_retain_until_date(&self) -> Option<&DateTime>

The date and time when the Object Lock retention period expires. This header is only returned if the requester has the s3:GetObjectRetention permission.

This functionality is not supported for directory buckets.

Specifies whether a legal hold is in effect for this object. This header is only returned if the requester has the s3:GetObjectLegalHold permission. This header is not returned if the specified version of this object has never had a legal hold applied. For more information about S3 Object Lock, see Object Lock.

This functionality is not supported for directory buckets.

source§

impl HeadObjectOutput

source

pub fn builder() -> HeadObjectOutputBuilder

Creates a new builder-style object to manufacture HeadObjectOutput.

Trait Implementations§

source§

impl Clone for HeadObjectOutput

source§

fn clone(&self) -> HeadObjectOutput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for HeadObjectOutput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for HeadObjectOutput

source§

fn eq(&self, other: &HeadObjectOutput) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl RequestId for HeadObjectOutput

source§

fn request_id(&self) -> Option<&str>

Returns the request ID, or None if the service could not be reached.
source§

impl RequestIdExt for HeadObjectOutput

source§

fn extended_request_id(&self) -> Option<&str>

Returns the S3 Extended Request ID necessary when contacting AWS Support.
source§

impl StructuralPartialEq for HeadObjectOutput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more