Class BlobProperties

java.lang.Object
com.azure.storage.blob.models.BlobProperties

public final class BlobProperties extends Object
This class contains the response information returned from the service when getting blob properties.
  • Constructor Details

    • BlobProperties

      public BlobProperties(OffsetDateTime creationTime, OffsetDateTime lastModified, String eTag, long blobSize, String contentType, byte[] contentMd5, String contentEncoding, String contentDisposition, String contentLanguage, String cacheControl, Long blobSequenceNumber, BlobType blobType, LeaseStatusType leaseStatus, LeaseStateType leaseState, LeaseDurationType leaseDuration, String copyId, CopyStatusType copyStatus, String copySource, String copyProgress, OffsetDateTime copyCompletionTime, String copyStatusDescription, Boolean isServerEncrypted, Boolean isIncrementalCopy, String copyDestinationSnapshot, AccessTier accessTier, Boolean isAccessTierInferred, ArchiveStatus archiveStatus, String encryptionKeySha256, OffsetDateTime accessTierChangeTime, Map<String,String> metadata, Integer committedBlockCount)
      Constructs a BlobProperties.
      Parameters:
      creationTime - Creation time of the blob.
      lastModified - Datetime when the blob was last modified.
      eTag - ETag of the blob.
      blobSize - Size of the blob.
      contentType - Content type specified for the blob.
      contentMd5 - Content MD5 specified for the blob.
      contentEncoding - Content encoding specified for the blob.
      contentDisposition - Content disposition specified for the blob.
      contentLanguage - Content language specified for the blob.
      cacheControl - Cache control specified for the blob.
      blobSequenceNumber - The current sequence number for a page blob, if the blob is an append or block blob pass null.
      blobType - Type of the blob.
      leaseStatus - Status of the lease on the blob.
      leaseState - State of the lease on the blob.
      leaseDuration - Type of lease on the blob.
      copyId - Identifier of the last copy operation performed on the blob.
      copyStatus - Status of the last copy operation performed on the blob.
      copySource - Source of the last copy operation performed on the blob.
      copyProgress - Progress of the last copy operation performed on the blob.
      copyCompletionTime - Datetime when the last copy operation on the blob completed.
      copyStatusDescription - Description of the last copy operation on the blob.
      isServerEncrypted - Flag indicating if the blob's content is encrypted on the server.
      isIncrementalCopy - Flag indicating if the blob was incrementally copied.
      copyDestinationSnapshot - Snapshot identifier of the last incremental copy snapshot for the blob.
      accessTier - Access tier of the blob.
      isAccessTierInferred - Flag indicating if the access tier of the blob was inferred from properties of the blob.
      archiveStatus - Archive status of the blob.
      encryptionKeySha256 - SHA256 of the customer provided encryption key used to encrypt the blob on the server.
      accessTierChangeTime - Datetime when the access tier of the blob last changed.
      metadata - Metadata associated with the blob.
      committedBlockCount - Number of blocks committed to an append blob, if the blob is a block or page blob pass null.
    • BlobProperties

      public BlobProperties(OffsetDateTime creationTime, OffsetDateTime lastModified, String eTag, long blobSize, String contentType, byte[] contentMd5, String contentEncoding, String contentDisposition, String contentLanguage, String cacheControl, Long blobSequenceNumber, BlobType blobType, LeaseStatusType leaseStatus, LeaseStateType leaseState, LeaseDurationType leaseDuration, String copyId, CopyStatusType copyStatus, String copySource, String copyProgress, OffsetDateTime copyCompletionTime, String copyStatusDescription, Boolean isServerEncrypted, Boolean isIncrementalCopy, String copyDestinationSnapshot, AccessTier accessTier, Boolean isAccessTierInferred, ArchiveStatus archiveStatus, String encryptionKeySha256, String encryptionScope, OffsetDateTime accessTierChangeTime, Map<String,String> metadata, Integer committedBlockCount, String versionId, Boolean isCurrentVersion, Long tagCount, Map<String,String> objectReplicationStatus, String rehydratePriority, Boolean isSealed)
      Constructs a BlobProperties.
      Parameters:
      creationTime - Creation time of the blob.
      lastModified - Datetime when the blob was last modified.
      eTag - ETag of the blob.
      blobSize - Size of the blob.
      contentType - Content type specified for the blob.
      contentMd5 - Content MD5 specified for the blob.
      contentEncoding - Content encoding specified for the blob.
      contentDisposition - Content disposition specified for the blob.
      contentLanguage - Content language specified for the blob.
      cacheControl - Cache control specified for the blob.
      blobSequenceNumber - The current sequence number for a page blob, if the blob is an append or block blob pass null.
      blobType - Type of the blob.
      leaseStatus - Status of the lease on the blob.
      leaseState - State of the lease on the blob.
      leaseDuration - Type of lease on the blob.
      copyId - Identifier of the last copy operation performed on the blob.
      copyStatus - Status of the last copy operation performed on the blob.
      copySource - Source of the last copy operation performed on the blob.
      copyProgress - Progress of the last copy operation performed on the blob.
      copyCompletionTime - Datetime when the last copy operation on the blob completed.
      copyStatusDescription - Description of the last copy operation on the blob.
      isServerEncrypted - Flag indicating if the blob's content is encrypted on the server.
      isIncrementalCopy - Flag indicating if the blob was incrementally copied.
      copyDestinationSnapshot - Snapshot identifier of the last incremental copy snapshot for the blob.
      accessTier - Access tier of the blob.
      isAccessTierInferred - Flag indicating if the access tier of the blob was inferred from properties of the blob.
      archiveStatus - Archive status of the blob.
      encryptionKeySha256 - SHA256 of the customer provided encryption key used to encrypt the blob on the server.
      encryptionScope - The name of the encryption scope under which the blob is encrypted.
      accessTierChangeTime - Datetime when the access tier of the blob last changed.
      metadata - Metadata associated with the blob.
      committedBlockCount - Number of blocks committed to an append blob, if the blob is a block or page blob pass null.
      versionId - The version identifier of the blob.
      isCurrentVersion - Flag indicating if version identifier points to current version of the blob.
      tagCount - Number of tags associated with the blob.
      objectReplicationStatus - The object replication status map to parse.
      rehydratePriority - The rehydrate priority
      isSealed - Whether the blob is sealed.
    • BlobProperties

      public BlobProperties(OffsetDateTime creationTime, OffsetDateTime lastModified, String eTag, long blobSize, String contentType, byte[] contentMd5, String contentEncoding, String contentDisposition, String contentLanguage, String cacheControl, Long blobSequenceNumber, BlobType blobType, LeaseStatusType leaseStatus, LeaseStateType leaseState, LeaseDurationType leaseDuration, String copyId, CopyStatusType copyStatus, String copySource, String copyProgress, OffsetDateTime copyCompletionTime, String copyStatusDescription, Boolean isServerEncrypted, Boolean isIncrementalCopy, String copyDestinationSnapshot, AccessTier accessTier, Boolean isAccessTierInferred, ArchiveStatus archiveStatus, String encryptionKeySha256, String encryptionScope, OffsetDateTime accessTierChangeTime, Map<String,String> metadata, Integer committedBlockCount, Long tagCount, String versionId, Boolean isCurrentVersion, List<ObjectReplicationPolicy> objectReplicationSourcePolicies, String objectReplicationDestinationPolicyId)
      Constructs a BlobProperties.
      Parameters:
      creationTime - Creation time of the blob.
      lastModified - Datetime when the blob was last modified.
      eTag - ETag of the blob.
      blobSize - Size of the blob.
      contentType - Content type specified for the blob.
      contentMd5 - Content MD5 specified for the blob.
      contentEncoding - Content encoding specified for the blob.
      contentDisposition - Content disposition specified for the blob.
      contentLanguage - Content language specified for the blob.
      cacheControl - Cache control specified for the blob.
      blobSequenceNumber - The current sequence number for a page blob, if the blob is an append or block blob pass null.
      blobType - Type of the blob.
      leaseStatus - Status of the lease on the blob.
      leaseState - State of the lease on the blob.
      leaseDuration - Type of lease on the blob.
      copyId - Identifier of the last copy operation performed on the blob.
      copyStatus - Status of the last copy operation performed on the blob.
      copySource - Source of the last copy operation performed on the blob.
      copyProgress - Progress of the last copy operation performed on the blob.
      copyCompletionTime - Datetime when the last copy operation on the blob completed.
      copyStatusDescription - Description of the last copy operation on the blob.
      isServerEncrypted - Flag indicating if the blob's content is encrypted on the server.
      isIncrementalCopy - Flag indicating if the blob was incrementally copied.
      copyDestinationSnapshot - Snapshot identifier of the last incremental copy snapshot for the blob.
      accessTier - Access tier of the blob.
      isAccessTierInferred - Flag indicating if the access tier of the blob was inferred from properties of the blob.
      archiveStatus - Archive status of the blob.
      encryptionKeySha256 - SHA256 of the customer provided encryption key used to encrypt the blob on the server.
      encryptionScope - The name of the encryption scope under which the blob is encrypted.
      accessTierChangeTime - Datetime when the access tier of the blob last changed.
      metadata - Metadata associated with the blob.
      committedBlockCount - Number of blocks committed to an append blob, if the blob is a block or page blob pass null.
      versionId - The version identifier of the blob.
      isCurrentVersion - Flag indicating if version identifier points to current version of the blob.
      tagCount - Number of tags associated with the blob.
      objectReplicationSourcePolicies - The already parsed object replication policies.
      objectReplicationDestinationPolicyId - The policy id on the destination blob.
    • BlobProperties

      public BlobProperties(OffsetDateTime creationTime, OffsetDateTime lastModified, String eTag, long blobSize, String contentType, byte[] contentMd5, String contentEncoding, String contentDisposition, String contentLanguage, String cacheControl, Long blobSequenceNumber, BlobType blobType, LeaseStatusType leaseStatus, LeaseStateType leaseState, LeaseDurationType leaseDuration, String copyId, CopyStatusType copyStatus, String copySource, String copyProgress, OffsetDateTime copyCompletionTime, String copyStatusDescription, Boolean isServerEncrypted, Boolean isIncrementalCopy, String copyDestinationSnapshot, AccessTier accessTier, Boolean isAccessTierInferred, ArchiveStatus archiveStatus, String encryptionKeySha256, String encryptionScope, OffsetDateTime accessTierChangeTime, Map<String,String> metadata, Integer committedBlockCount, Long tagCount, String versionId, Boolean isCurrentVersion, List<ObjectReplicationPolicy> objectReplicationSourcePolicies, String objectReplicationDestinationPolicyId, RehydratePriority rehydratePriority, Boolean isSealed, OffsetDateTime lastAccessedTime, OffsetDateTime expiresOn)
      Constructs a BlobProperties.
      Parameters:
      creationTime - Creation time of the blob.
      lastModified - Datetime when the blob was last modified.
      eTag - ETag of the blob.
      blobSize - Size of the blob.
      contentType - Content type specified for the blob.
      contentMd5 - Content MD5 specified for the blob.
      contentEncoding - Content encoding specified for the blob.
      contentDisposition - Content disposition specified for the blob.
      contentLanguage - Content language specified for the blob.
      cacheControl - Cache control specified for the blob.
      blobSequenceNumber - The current sequence number for a page blob, if the blob is an append or block blob pass null.
      blobType - Type of the blob.
      leaseStatus - Status of the lease on the blob.
      leaseState - State of the lease on the blob.
      leaseDuration - Type of lease on the blob.
      copyId - Identifier of the last copy operation performed on the blob.
      copyStatus - Status of the last copy operation performed on the blob.
      copySource - Source of the last copy operation performed on the blob.
      copyProgress - Progress of the last copy operation performed on the blob.
      copyCompletionTime - Datetime when the last copy operation on the blob completed.
      copyStatusDescription - Description of the last copy operation on the blob.
      isServerEncrypted - Flag indicating if the blob's content is encrypted on the server.
      isIncrementalCopy - Flag indicating if the blob was incrementally copied.
      copyDestinationSnapshot - Snapshot identifier of the last incremental copy snapshot for the blob.
      accessTier - Access tier of the blob.
      isAccessTierInferred - Flag indicating if the access tier of the blob was inferred from properties of the blob.
      archiveStatus - Archive status of the blob.
      encryptionKeySha256 - SHA256 of the customer provided encryption key used to encrypt the blob on the server.
      encryptionScope - The name of the encryption scope under which the blob is encrypted.
      accessTierChangeTime - Datetime when the access tier of the blob last changed.
      metadata - Metadata associated with the blob.
      committedBlockCount - Number of blocks committed to an append blob, if the blob is a block or page blob pass null.
      versionId - The version identifier of the blob.
      isCurrentVersion - Flag indicating if version identifier points to current version of the blob.
      tagCount - Number of tags associated with the blob.
      objectReplicationSourcePolicies - The already parsed object replication policies.
      objectReplicationDestinationPolicyId - The policy id on the destination blob.
      rehydratePriority - The rehydrate priority
      isSealed - Whether the blob is sealed.
      lastAccessedTime - The date and time the blob was read or written to.
      expiresOn - The time when the blob is going to expire.
    • BlobProperties

      public BlobProperties(OffsetDateTime creationTime, OffsetDateTime lastModified, String eTag, long blobSize, String contentType, byte[] contentMd5, String contentEncoding, String contentDisposition, String contentLanguage, String cacheControl, Long blobSequenceNumber, BlobType blobType, LeaseStatusType leaseStatus, LeaseStateType leaseState, LeaseDurationType leaseDuration, String copyId, CopyStatusType copyStatus, String copySource, String copyProgress, OffsetDateTime copyCompletionTime, String copyStatusDescription, Boolean isServerEncrypted, Boolean isIncrementalCopy, String copyDestinationSnapshot, AccessTier accessTier, Boolean isAccessTierInferred, ArchiveStatus archiveStatus, String encryptionKeySha256, String encryptionScope, OffsetDateTime accessTierChangeTime, Map<String,String> metadata, Integer committedBlockCount, Long tagCount, String versionId, Boolean isCurrentVersion, List<ObjectReplicationPolicy> objectReplicationSourcePolicies, String objectReplicationDestinationPolicyId, RehydratePriority rehydratePriority, Boolean isSealed, OffsetDateTime lastAccessedTime, OffsetDateTime expiresOn, BlobImmutabilityPolicy immutabilityPolicy, Boolean hasLegalHold)
      Constructs a BlobProperties.
      Parameters:
      creationTime - Creation time of the blob.
      lastModified - Datetime when the blob was last modified.
      eTag - ETag of the blob.
      blobSize - Size of the blob.
      contentType - Content type specified for the blob.
      contentMd5 - Content MD5 specified for the blob.
      contentEncoding - Content encoding specified for the blob.
      contentDisposition - Content disposition specified for the blob.
      contentLanguage - Content language specified for the blob.
      cacheControl - Cache control specified for the blob.
      blobSequenceNumber - The current sequence number for a page blob, if the blob is an append or block blob pass null.
      blobType - Type of the blob.
      leaseStatus - Status of the lease on the blob.
      leaseState - State of the lease on the blob.
      leaseDuration - Type of lease on the blob.
      copyId - Identifier of the last copy operation performed on the blob.
      copyStatus - Status of the last copy operation performed on the blob.
      copySource - Source of the last copy operation performed on the blob.
      copyProgress - Progress of the last copy operation performed on the blob.
      copyCompletionTime - Datetime when the last copy operation on the blob completed.
      copyStatusDescription - Description of the last copy operation on the blob.
      isServerEncrypted - Flag indicating if the blob's content is encrypted on the server.
      isIncrementalCopy - Flag indicating if the blob was incrementally copied.
      copyDestinationSnapshot - Snapshot identifier of the last incremental copy snapshot for the blob.
      accessTier - Access tier of the blob.
      isAccessTierInferred - Flag indicating if the access tier of the blob was inferred from properties of the blob.
      archiveStatus - Archive status of the blob.
      encryptionKeySha256 - SHA256 of the customer provided encryption key used to encrypt the blob on the server.
      encryptionScope - The name of the encryption scope under which the blob is encrypted.
      accessTierChangeTime - Datetime when the access tier of the blob last changed.
      metadata - Metadata associated with the blob.
      committedBlockCount - Number of blocks committed to an append blob, if the blob is a block or page blob pass null.
      versionId - The version identifier of the blob.
      isCurrentVersion - Flag indicating if version identifier points to current version of the blob.
      tagCount - Number of tags associated with the blob.
      objectReplicationSourcePolicies - The already parsed object replication policies.
      objectReplicationDestinationPolicyId - The policy id on the destination blob.
      rehydratePriority - The rehydrate priority
      isSealed - Whether the blob is sealed.
      lastAccessedTime - The date and time the blob was read or written to.
      expiresOn - The time when the blob is going to expire.
      immutabilityPolicy - The immutability policy of the blob.
      hasLegalHold - Whether the blob has a legal hold.
  • Method Details

    • getCreationTime

      public OffsetDateTime getCreationTime()
      Returns:
      the time when the blob was created
    • getLastModified

      public OffsetDateTime getLastModified()
      Returns:
      the time when the blob was last modified
    • getETag

      public String getETag()
      Returns:
      the eTag of the blob
    • getBlobSize

      public long getBlobSize()
      Returns:
      the size of the blob in bytes
    • getContentType

      public String getContentType()
      Returns:
      the content type of the blob
    • getContentMd5

      public byte[] getContentMd5()
      Returns:
      the MD5 of the blob's content
    • getContentEncoding

      public String getContentEncoding()
      Returns:
      the content encoding of the blob
    • getContentDisposition

      public String getContentDisposition()
      Returns:
      the content disposition of the blob
    • getContentLanguage

      public String getContentLanguage()
      Returns:
      the content language of the blob
    • getCacheControl

      public String getCacheControl()
      Returns:
      the cache control of the blob
    • getBlobSequenceNumber

      public Long getBlobSequenceNumber()
      Returns:
      the current sequence number of the page blob. This is only returned for page blobs.
    • getBlobType

      public BlobType getBlobType()
      Returns:
      the type of the blob
    • getLeaseStatus

      public LeaseStatusType getLeaseStatus()
      Returns:
      the lease status of the blob
    • getLeaseState

      public LeaseStateType getLeaseState()
      Returns:
      the lease state of the blob
    • getLeaseDuration

      public LeaseDurationType getLeaseDuration()
      Returns:
      the lease duration if the blob is leased
    • getCopyId

      public String getCopyId()
      Returns:
      the identifier of the last copy operation. If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • getCopyStatus

      public CopyStatusType getCopyStatus()
      Returns:
      the status of the last copy operation. If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • getCopySource

      public String getCopySource()
      Returns:
      the source blob URL from the last copy operation. If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • getCopyProgress

      public String getCopyProgress()
      Returns:
      the number of bytes copied and total bytes in the source from the last copy operation (bytes copied/total bytes). If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • getCopyCompletionTime

      public OffsetDateTime getCopyCompletionTime()
      Returns:
      the completion time of the last copy operation. If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • getCopyStatusDescription

      public String getCopyStatusDescription()
      Returns:
      the description of the last copy failure, this is set when the getCopyStatus is failed or aborted. If this blob hasn't been the target of a copy operation or has been modified since this won't be set.
    • isServerEncrypted

      public Boolean isServerEncrypted()
      Returns:
      the status of the blob being encrypted on the server
    • isIncrementalCopy

      public Boolean isIncrementalCopy()
      Returns:
      the status of the blob being an incremental copy blob
    • getCopyDestinationSnapshot

      public String getCopyDestinationSnapshot()
      Returns:
      the snapshot time of the last successful incremental copy snapshot for this blob. If this blob isn't an incremental copy blob or incremental copy snapshot or getCopyStatus isn't success this won't be set.
    • getAccessTier

      public AccessTier getAccessTier()
      Returns:
      the tier of the blob. This is only set for Page blobs on a premium storage account or for Block blobs on blob storage or general purpose V2 account.
    • isAccessTierInferred

      public Boolean isAccessTierInferred()
      Returns:
      the status of the tier being inferred for the blob. This is only set for Page blobs on a premium storage account or for Block blobs on blob storage or general purpose V2 account.
    • getArchiveStatus

      public ArchiveStatus getArchiveStatus()
      Returns:
      the archive status of the blob. This is only for blobs on a blob storage and general purpose v2 account.
    • getEncryptionKeySha256

      public String getEncryptionKeySha256()
      Returns:
      the key used to encrypt the blob
    • getEncryptionScope

      public String getEncryptionScope()
      Returns:
      The name of the encryption scope under which the blob is encrypted.
    • getAccessTierChangeTime

      public OffsetDateTime getAccessTierChangeTime()
      Returns:
      the time when the access tier for the blob was last changed
    • getMetadata

      public Map<String,String> getMetadata()
      Returns:
      the metadata associated with this blob
    • getCommittedBlockCount

      public Integer getCommittedBlockCount()
      Returns:
      the number of committed blocks in the blob. This is only returned for Append blobs.
    • getTagCount

      public Long getTagCount()
      Returns:
      The number of tags associated with the blob.
    • getVersionId

      public String getVersionId()
      Returns:
      the version identifier the blob.
    • isCurrentVersion

      public Boolean isCurrentVersion()
      Returns:
      the flag indicating whether version identifier points to current version of the blob.
    • getObjectReplicationSourcePolicies

      public List<ObjectReplicationPolicy> getObjectReplicationSourcePolicies()
      Returns:
      a List that contains information on the object replication policies associated with this blob and the status of the replication for each policy. Only available when the blob is the source of object replication.
    • getObjectReplicationDestinationPolicyId

      public String getObjectReplicationDestinationPolicyId()
      Returns:
      a String that identifies the Object Replication Policy which made this blob the destination of a copy.
    • getRehydratePriority

      public RehydratePriority getRehydratePriority()
      Returns:
      The RehydratePriority of the blob if it is in RehydratePending state.
    • isSealed

      public Boolean isSealed()
      Returns:
      the flag indicating whether this blob has been sealed (marked as read only). This is only returned for Append blobs.
    • getLastAccessedTime

      public OffsetDateTime getLastAccessedTime()
      Returns:
      The date and time the blob was read or written to.
    • getExpiresOn

      public OffsetDateTime getExpiresOn()
      Returns:
      the time when the blob is going to expire.
    • getImmutabilityPolicy

      public BlobImmutabilityPolicy getImmutabilityPolicy()
      Returns:
      the immutability policy.
    • hasLegalHold

      public Boolean hasLegalHold()
      Returns:
      whether the blob has a legal hold.