Class GetObjectResponse

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<GetObjectResponse.Builder,GetObjectResponse>

@Generated("software.amazon.awssdk:codegen") public final class GetObjectResponse extends S3Response implements ToCopyableBuilder<GetObjectResponse.Builder,GetObjectResponse>
  • Method Details

    • deleteMarker

      public final Boolean deleteMarker()

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

      • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

      • If the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

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

      • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

      • If the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

    • acceptRanges

      public final String acceptRanges()

      Indicates that a range of bytes was specified in the request.

      Returns:
      Indicates that a range of bytes was specified in the request.
    • expiration

      public final String expiration()

      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.

      Returns:
      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

      public final String restore()

      Provides information about object restoration action and expiration time of the restored object copy.

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

      Returns:
      Provides information about object restoration action and expiration time of the restored object copy.

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

    • lastModified

      public final Instant lastModified()

      Date and time when the object was last modified.

      General purpose buckets - When you specify a versionId of the object in your request, if the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

      Returns:
      Date and time when the object was last modified.

      General purpose buckets - When you specify a versionId of the object in your request, if the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

    • contentLength

      public final Long contentLength()

      Size of the body in bytes.

      Returns:
      Size of the body in bytes.
    • eTag

      public final String eTag()

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

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

      public final String checksumCRC32()

      The base64-encoded, 32-bit CRC-32 checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

      Returns:
      The base64-encoded, 32-bit CRC-32 checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.
    • checksumCRC32C

      public final String checksumCRC32C()

      The base64-encoded, 32-bit CRC-32C checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

      Returns:
      The base64-encoded, 32-bit CRC-32C checksum of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.
    • checksumSHA1

      public final String checksumSHA1()

      The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

      Returns:
      The base64-encoded, 160-bit SHA-1 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.
    • checksumSHA256

      public final String checksumSHA256()

      The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

      Returns:
      The base64-encoded, 256-bit SHA-256 digest of the object. This will only be present if it was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.
    • missingMeta

      public final Integer missingMeta()

      This is set to the number of metadata entries not returned in the headers that are prefixed with x-amz-meta-. 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.

      Returns:
      This is set to the number of metadata entries not returned in the headers that are prefixed with x-amz-meta-. 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.

    • versionId

      public final String versionId()

      Version ID of the object.

      This functionality is not supported for directory buckets.

      Returns:
      Version ID of the object.

      This functionality is not supported for directory buckets.

    • cacheControl

      public final String cacheControl()

      Specifies caching behavior along the request/reply chain.

      Returns:
      Specifies caching behavior along the request/reply chain.
    • contentDisposition

      public final String contentDisposition()

      Specifies presentational information for the object.

      Returns:
      Specifies presentational information for the object.
    • contentEncoding

      public final String contentEncoding()

      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.

      Returns:
      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.
    • contentLanguage

      public final String contentLanguage()

      The language the content is in.

      Returns:
      The language the content is in.
    • contentRange

      public final String contentRange()

      The portion of the object returned in the response.

      Returns:
      The portion of the object returned in the response.
    • contentType

      public final String contentType()

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

      Returns:
      A standard MIME type describing the format of the object data.
    • expires

      @Deprecated public final Instant expires()
      Deprecated.
      Usage of the Expires field is deprecated in favor of the more flexible and less error prone ExpiresString

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

      Returns:
      The date and time at which the object is no longer cacheable.
    • websiteRedirectLocation

      public final String websiteRedirectLocation()

      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.

      Returns:
      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.

    • serverSideEncryption

      public final ServerSideEncryption serverSideEncryption()

      The server-side encryption algorithm used when you store this object in Amazon S3.

      If the service returns an enum value that is not available in the current SDK version, serverSideEncryption will return ServerSideEncryption.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from serverSideEncryptionAsString().

      Returns:
      The server-side encryption algorithm used when you store this object in Amazon S3.
      See Also:
    • serverSideEncryptionAsString

      public final String serverSideEncryptionAsString()

      The server-side encryption algorithm used when you store this object in Amazon S3.

      If the service returns an enum value that is not available in the current SDK version, serverSideEncryption will return ServerSideEncryption.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from serverSideEncryptionAsString().

      Returns:
      The server-side encryption algorithm used when you store this object in Amazon S3.
      See Also:
    • hasMetadata

      public final boolean hasMetadata()
      For responses, this returns true if the service returned a value for the Metadata property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • metadata

      public final Map<String,String> metadata()

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

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasMetadata() method.

      Returns:
      A map of metadata to store with the object in S3.
    • sseCustomerAlgorithm

      public final String sseCustomerAlgorithm()

      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.

      Returns:
      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.

    • sseCustomerKeyMD5

      public final String sseCustomerKeyMD5()

      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.

      Returns:
      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.

    • ssekmsKeyId

      public final String ssekmsKeyId()

      If present, indicates the ID of the KMS key that was used for object encryption.

      Returns:
      If present, indicates the ID of the KMS key that was used for object encryption.
    • bucketKeyEnabled

      public final Boolean bucketKeyEnabled()

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

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

      public final StorageClass storageClass()

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

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

      If the service returns an enum value that is not available in the current SDK version, storageClass will return StorageClass.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from storageClassAsString().

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

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

      See Also:
    • storageClassAsString

      public final String storageClassAsString()

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

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

      If the service returns an enum value that is not available in the current SDK version, storageClass will return StorageClass.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from storageClassAsString().

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

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

      See Also:
    • requestCharged

      public final RequestCharged requestCharged()
      Returns the value of the RequestCharged property for this object.

      If the service returns an enum value that is not available in the current SDK version, requestCharged will return RequestCharged.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from requestChargedAsString().

      Returns:
      The value of the RequestCharged property for this object.
      See Also:
    • requestChargedAsString

      public final String requestChargedAsString()
      Returns the value of the RequestCharged property for this object.

      If the service returns an enum value that is not available in the current SDK version, requestCharged will return RequestCharged.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from requestChargedAsString().

      Returns:
      The value of the RequestCharged property for this object.
      See Also:
    • replicationStatus

      public final ReplicationStatus replicationStatus()

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

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, replicationStatus will return ReplicationStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationStatusAsString().

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

      This functionality is not supported for directory buckets.

      See Also:
    • replicationStatusAsString

      public final String replicationStatusAsString()

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

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, replicationStatus will return ReplicationStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from replicationStatusAsString().

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

      This functionality is not supported for directory buckets.

      See Also:
    • partsCount

      public final Integer partsCount()

      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.

      Returns:
      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.
    • tagCount

      public final Integer tagCount()

      The number of tags, if any, on the object, when you have the relevant permission to read object tags.

      You can use GetObjectTagging to retrieve the tag set associated with an object.

      This functionality is not supported for directory buckets.

      Returns:
      The number of tags, if any, on the object, when you have the relevant permission to read object tags.

      You can use GetObjectTagging to retrieve the tag set associated with an object.

      This functionality is not supported for directory buckets.

    • objectLockMode

      public final ObjectLockMode objectLockMode()

      The Object Lock mode that's currently in place for this object.

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, objectLockMode will return ObjectLockMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from objectLockModeAsString().

      Returns:
      The Object Lock mode that's currently in place for this object.

      This functionality is not supported for directory buckets.

      See Also:
    • objectLockModeAsString

      public final String objectLockModeAsString()

      The Object Lock mode that's currently in place for this object.

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, objectLockMode will return ObjectLockMode.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from objectLockModeAsString().

      Returns:
      The Object Lock mode that's currently in place for this object.

      This functionality is not supported for directory buckets.

      See Also:
    • objectLockRetainUntilDate

      public final Instant objectLockRetainUntilDate()

      The date and time when this object's Object Lock will expire.

      This functionality is not supported for directory buckets.

      Returns:
      The date and time when this object's Object Lock will expire.

      This functionality is not supported for directory buckets.

    • objectLockLegalHoldStatus

      public final ObjectLockLegalHoldStatus objectLockLegalHoldStatus()

      Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, objectLockLegalHoldStatus will return ObjectLockLegalHoldStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from objectLockLegalHoldStatusAsString().

      Returns:
      Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

      This functionality is not supported for directory buckets.

      See Also:
    • objectLockLegalHoldStatusAsString

      public final String objectLockLegalHoldStatusAsString()

      Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

      This functionality is not supported for directory buckets.

      If the service returns an enum value that is not available in the current SDK version, objectLockLegalHoldStatus will return ObjectLockLegalHoldStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from objectLockLegalHoldStatusAsString().

      Returns:
      Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object's legal hold status.

      This functionality is not supported for directory buckets.

      See Also:
    • expiresString

      public final String expiresString()

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

      Returns:
      The date and time at which the object is no longer cacheable
    • toBuilder

      public GetObjectResponse.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<GetObjectResponse.Builder,GetObjectResponse>
      Specified by:
      toBuilder in class AwsResponse
      Returns:
      a builder for type T
    • builder

      public static GetObjectResponse.Builder builder()
    • serializableBuilderClass

      public static Class<? extends GetObjectResponse.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsResponse
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsResponse
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be redacted from this string using a placeholder value.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkResponse
      Used to retrieve the value of a field from any class that extends SdkResponse. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkResponse.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkResponse
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.