你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
CloudBlobContainer 类
- java.
lang. Object - com.
microsoft. azure. storage. blob. CloudBlobContainer
- com.
public class CloudBlobContainer
表示 Microsoft Azure Blob 服务中的容器。
容器,封装为 CloudBlobDirectory 对象,其中包含目录,目录中包含块 Blob 和页 Blob。 目录还可以包含子目录。
字段摘要
修饰符和类型 | 字段和描述 |
---|---|
HashMap<String, String> |
metadata
表示容器元数据。 |
构造函数摘要
构造函数 | 说明 |
---|---|
CloudBlobContainer(final StorageUri storageUri) |
使用指定的 URI 创建 类的实例。 Blob URI 应包含 SAS 令牌,除非使用匿名访问。 |
CloudBlobContainer(final StorageUri storageUri, final StorageCredentials credentials) |
使用指定的 StorageUri 和凭据创建 类的实例。 |
CloudBlobContainer(final String containerName, final CloudBlobClient client) |
使用指定的名称和客户端创建 类的实例。 |
CloudBlobContainer(final URI uri) |
使用指定的 URI 创建 类的实例。 Blob URI 应包含 SAS 令牌,除非使用匿名访问。 |
CloudBlobContainer(final URI uri, final StorageCredentials credentials) |
使用指定的 URI 和凭据创建 类的实例。 |
方法摘要
字段详细信息
metadata
protected HashMap
表示容器元数据。
构造函数详细信息
CloudBlobContainer
public CloudBlobContainer(final StorageUri storageUri)
使用指定的 URI 创建 类的实例。 Blob URI 应包含 SAS 令牌,除非使用匿名访问。
Parameters:
Throws:
CloudBlobContainer
public CloudBlobContainer(final StorageUri storageUri, final StorageCredentials credentials)
使用指定的 StorageUri 和凭据创建 类的实例。
Parameters:
Throws:
CloudBlobContainer
protected CloudBlobContainer(final String containerName, final CloudBlobClient client)
使用指定的名称和客户端创建 类的实例。
Parameters:
String
,它表示容器的名称,该名称必须遵守容器命名规则。 容器名称不应包含 /) (的任何路径分隔符。 容器名称必须为小写,长度在 3-63 个字符之间,并且必须以字母或数字开头。 容器名称只能包含字母、数字和短划线 ( ) 字符。
Throws:
CloudBlobContainer
public CloudBlobContainer(final URI uri)
使用指定的 URI 创建 类的实例。 Blob URI 应包含 SAS 令牌,除非使用匿名访问。
Parameters:
java.net.URI
对象,表示容器的 URI。
Throws:
CloudBlobContainer
public CloudBlobContainer(final URI uri, final StorageCredentials credentials)
使用指定的 URI 和凭据创建 类的实例。
Parameters:
java.net.URI
对象,表示容器的绝对 URI。
Throws:
方法详细信息
acquireLease
public final String acquireLease()
获取容器上的新无限租约。
Returns:
String
租约 ID 的 。Throws:
acquireLease
public final String acquireLease(final Integer leaseTimeInSeconds, final String proposedLeaseId)
获取具有指定租用时间和建议租约 ID 的容器上的新租约。
Parameters:
Integer
指定获取租约的时间跨度(以秒为单位)。 如果为 null,则将获取无限租约。 如果不为 null,则该值必须大于零。
String
新租约的建议租约 ID 的 ;如果未建议租约 ID,则为 null。
Returns:
String
租约 ID 的 。Throws:
acquireLease
public final String acquireLease(final Integer leaseTimeInSeconds, final String proposedLeaseId, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
获取具有指定租用时间、建议的租约 ID、请求选项和操作上下文的容器上的新租约。
Parameters:
Integer
指定获取租约的时间跨度(以秒为单位)。 如果为 null,则将获取无限租约。 如果不为 null,则该值必须大于零。
String
新租约的建议租约 ID 的 ;如果未建议租约 ID,则为 null。
Returns:
String
租约 ID 的 。Throws:
breakLease
public final long breakLease(final Integer breakPeriodInSeconds)
中断租约,并确保其他客户端在当前租约期到期之前无法获取新租约。
Parameters:
Integer
指定在当前租约中断之前等待的时间(以秒为单位)。 如果为 null,则中断期是当前租约的剩余时间;对于无限期租约,则为零。
Returns:
Throws:
breakLease
public final long breakLease(final Integer breakPeriodInSeconds, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文中断现有租约,并确保在当前租约期到期之前,其他客户端无法获取新的租约。
Parameters:
Integer
指定在当前租约中断之前等待的时间(以秒为单位)。 如果为 null,则中断期是当前租约的剩余时间;对于无限期租约,则为零。
Returns:
Throws:
changeLease
public final String changeLease(final String proposedLeaseId, final AccessCondition accessCondition)
将现有租约 ID 更改为建议的租约 ID。
Parameters:
String
新租约的建议租约 ID 的 ;如果未建议租约 ID,则为 null。
Returns:
String
新租约 ID 的 。Throws:
changeLease
public final String changeLease(final String proposedLeaseId, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的访问条件、请求选项和操作上下文将现有租约 ID 更改为建议的租约 ID。
Parameters:
String
,表示新租约的建议租约 ID。 此值不能为 null。
Returns:
String
新租约 ID 的 。Throws:
create
public void create()
创建容器。
Throws:
create
public void create(BlobContainerPublicAccessType accessType, BlobRequestOptions options, OperationContext opContext)
使用指定的选项和操作上下文创建容器。
Parameters:
Throws:
create
public void create(BlobRequestOptions options, OperationContext opContext)
使用指定的选项和操作上下文创建容器。
Parameters:
Throws:
createIfNotExists
public boolean createIfNotExists()
如果容器不存在,则创建该容器。
Returns:
如果容器不存在但已创建,则为 true
;否则为 false
。
Throws:
createIfNotExists
public boolean createIfNotExists(BlobContainerPublicAccessType accessType, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文创建容器(如果不存在)。
Parameters:
Returns:
如果容器不存在但已创建,则为 true
;否则为 false
。
Throws:
createIfNotExists
public boolean createIfNotExists(BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文创建容器(如果不存在)。
Parameters:
Returns:
如果容器不存在但已创建,则为 true
;否则为 false
。
Throws:
delete
public void delete()
删除容器。
Throws:
delete
public void delete(AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文删除容器。
Parameters:
Throws:
deleteIfExists
public boolean deleteIfExists()
删除容器(如果存在)。
Returns:
如果容器不存在但已创建,则为 true
;否则为 false
。
Throws:
deleteIfExists
public boolean deleteIfExists(AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文删除容器(如果存在)。
Parameters:
Returns:
true
如果容器存在并且已删除,则为 ;否则为 false
。
Throws:
downloadAccountInfo
public AccountInformation downloadAccountInfo()
获取与此容器所在的存储帐户相关的信息。
Returns:
Throws:
downloadAccountInfo
public AccountInformation downloadAccountInfo(BlobRequestOptions options, OperationContext opContext)
获取与此容器所在的存储帐户相关的信息。
Parameters:
Returns:
Throws:
downloadAccountInformationImpl
protected StorageRequest
Parameters:
downloadAttributes
public void downloadAttributes()
下载容器的属性,这些属性由元数据和属性组成。
Throws:
downloadAttributes
public void downloadAttributes(AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文下载容器的属性,其中包括元数据和属性。
Parameters:
Throws:
downloadPermissions
public BlobContainerPermissions downloadPermissions()
下载容器的权限设置。
Returns:
Throws:
downloadPermissions
public BlobContainerPermissions downloadPermissions(AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文下载容器的权限设置。
Parameters:
Returns:
Throws:
exists
public boolean exists()
返回一个值,该值指示容器是否存在。
Returns:
true
如果容器存在,则为 ;否则为 false
。
Throws:
exists
public boolean exists(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文返回一个值,该值指示容器是否存在。
Parameters:
Returns:
true
如果容器存在,则为 ;否则为 false
。
Throws:
generateSharedAccessSignature
public String generateSharedAccessSignature(final SharedAccessBlobPolicy policy, final String groupPolicyIdentifier)
返回容器的共享访问签名。 请注意,这不包含前导“?”。
Parameters:
String
容器级访问策略的 。
Returns:
String
容器的共享访问签名的 。Throws:
generateSharedAccessSignature
public String generateSharedAccessSignature(final SharedAccessBlobPolicy policy, final String groupPolicyIdentifier, final IPRange ipRange, final SharedAccessProtocols protocols)
返回容器的共享访问签名。 请注意,这不包含前导“?”。
Parameters:
String
容器级访问策略的 。
Returns:
String
容器的共享访问签名的 。Throws:
getAppendBlobReference
public CloudAppendBlob getAppendBlobReference(final String blobName)
返回对 CloudAppendBlob 对象的引用,该对象表示此容器中的追加 Blob。
Parameters:
String
,它表示 Blob 的名称。
Returns:
Throws:
getAppendBlobReference
public CloudAppendBlob getAppendBlobReference(final String blobName, final String snapshotID)
使用指定的快照 ID,返回对 CloudAppendBlob 表示容器中追加 blob 的 对象的引用。
Parameters:
String
,它表示 Blob 的名称。
String
,表示 blob 的快照 ID。
Returns:
Throws:
getBlobReferenceFromServer
public final CloudBlob getBlobReferenceFromServer(final String blobName)
获取对此容器中的 Blob 的引用。 Blob 必须已存在于服务中。
与其他 get*Reference 方法不同,此方法执行服务请求来检索 Blob 的元数据和属性。 返回的 Blob 可以直接用作 CloudBlob,也可以使用 instanceof 或 getProperties () .getBlobType () 进行强制转换,以确定其子类型。
Parameters:
String
,它表示 Blob 的名称。
Returns:
Throws:
getBlobReferenceFromServer
public final CloudBlob getBlobReferenceFromServer(final String blobName, final String snapshotID, AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
获取对此容器中的 Blob 的引用。 Blob 必须已存在于服务中。
与其他 get*Reference 方法不同,此方法执行服务请求来检索 Blob 的元数据和属性。 返回的 Blob 可以直接用作 CloudBlob,也可以使用 instanceof 或 getProperties () .getBlobType () 进行强制转换,以确定其子类型。
Parameters:
String
,它表示 Blob 的名称。
String
,表示 blob 的快照 ID。
Returns:
Throws:
getBlockBlobReference
public CloudBlockBlob getBlockBlobReference(final String blobName)
返回对 CloudBlockBlob 表示此容器中的块 Blob 的 对象的引用。
Parameters:
String
,表示 Blob 的名称。
Returns:
Throws:
getBlockBlobReference
public CloudBlockBlob getBlockBlobReference(final String blobName, final String snapshotID)
使用指定的快照 ID 返回对CloudBlockBlob表示此容器中的块 Blob 的 对象的引用。
Parameters:
String
,表示 Blob 的名称。
String
,表示 blob 的快照 ID。
Returns:
Throws:
getDirectoryReference
public CloudBlobDirectory getDirectoryReference(String directoryName)
返回对 CloudBlobDirectory 对象的引用,该对象表示此容器中的虚拟 Blob 目录。
Parameters:
String
,表示虚拟 Blob 目录的名称。 如果需要根目录 (表示容器本身) 的目录,请使用空字符串。
Returns:
Throws:
getMetadata
public HashMap
返回容器的元数据。 此值通过调用 downloadAttributes(),使用队列中的元数据进行初始化,并且通过调用 uploadMetadata()在队列上设置此值。
Returns:
java.util.HashMap
对象,表示容器的元数据。getName
public String getName()
返回容器的名称。
Returns:
String
,它表示容器的名称。getPageBlobReference
public CloudPageBlob getPageBlobReference(final String blobName)
返回对 CloudPageBlob 表示此容器中的页 Blob 的 对象的引用。
Parameters:
String
,表示 Blob 的名称。
Returns:
Throws:
getPageBlobReference
public CloudPageBlob getPageBlobReference(final String blobName, final String snapshotID)
使用指定的快照 ID 返回对 CloudPageBlob 表示容器中页 Blob 的 对象的引用。
Parameters:
String
,表示 Blob 的名称。
String
,表示 blob 的快照 ID。
Returns:
Throws:
getProperties
public BlobContainerProperties getProperties()
返回容器的属性。
Returns:
getServiceClient
public CloudBlobClient getServiceClient()
返回与此容器关联的 Blob 服务客户端。
Returns:
getStorageUri
getUri
public URI getUri()
返回此容器的 URI。
Returns:
listBlobs
listBlobs
public Iterable
返回容器的 Blob 项的可枚举集合,其名称以指定前缀开头。
Parameters:
String
,它表示 Blob 名称前缀。 此值的前面必须是容器的名称或容器的绝对路径。
Returns:
listBlobs
public Iterable
返回容器的 Blob 项的可枚举集合,该容器的名称使用指定的平面或分层选项以指定前缀开头。
Parameters:
String
,它表示 Blob 名称前缀。 此值的前面必须是容器的名称或容器的绝对路径。
true
以指示返回的列表将为平面; false
以指示返回的列表将是分层的。
Returns:
listBlobs
public Iterable
返回容器的 Blob 项的可枚举集合,该容器的名称以指定前缀开头,使用指定的平面或分层选项、列出详细信息选项、请求选项和操作上下文。
Parameters:
String
,它表示 Blob 名称前缀。 此值的前面必须是容器的名称或容器的绝对路径。
true
以指示返回的列表将为平面; false
以指示返回的列表将是分层的。
java.util.EnumSet
对象,其中包含 BlobListingDetails 指示是否返回快照、软删除的 Blob、元数据和/或未提交的块的值。 始终返回提交的块。
Returns:
listBlobsSegmented
public ResultSegment
返回容器中 Blob 项的可枚举集合的结果段。
Returns:
Throws:
listBlobsSegmented
public ResultSegment
返回一个结果段,其中包含其名称以指定前缀开头的 blob 项集合。
Parameters:
String
,它表示 Blob 名称的前缀。
Returns:
Throws:
listBlobsSegmented
public ResultSegment
返回一个结果段,其中包含名称以指定前缀开头、使用指定的平面或分层选项、列出详细信息选项、请求选项和操作上下文的 blob 项集合。
Parameters:
String
,它表示 Blob 名称的前缀。
true
以指示返回的列表将为平面; false
以指示返回的列表将是分层的。
java.util.EnumSet
对象,其中包含 BlobListingDetails 指示是否返回快照、软删除的 Blob、元数据和/或未提交的块的值。 始终返回提交的块。
null
或大于 5000,服务器将返回最多 5,000 个项。 必须至少为 1。
Returns:
Throws:
listContainers
public Iterable
返回与此容器关联的服务客户端的容器的可枚举集合。
Returns:
listContainers
public Iterable
返回容器的可枚举集合,其名称以与此容器关联的服务客户端的指定前缀开头。
Parameters:
String
,它表示容器名称前缀。
Returns:
listContainers
public Iterable
使用指定的详细信息设置、请求选项和操作上下文返回容器的可枚举集合,其名称以与此容器关联的服务客户端的指定前缀开头。
Parameters:
String
,它表示容器名称前缀。
Returns:
listContainersSegmented
public ResultSegment
返回与此容器关联的服务客户端的可枚举容器集合的结果段。
Returns:
Throws:
listContainersSegmented
public ResultSegment
返回容器的可枚举集合的结果段,其名称以与此容器关联的服务客户端的指定前缀开头。
Parameters:
String
,它表示 Blob 名称前缀。
Returns:
Throws:
listContainersSegmented
public ResultSegment
使用指定的列表详细信息选项、请求选项和操作上下文返回包含容器集合的结果段,这些容器的名称以与此容器关联的服务客户端的指定前缀开头。
Parameters:
String
,它表示容器名称的前缀。
null
或大于 5000,服务器将返回最多 5,000 个项目。 必须至少为 1。
Returns:
Throws:
releaseLease
public final void releaseLease(final AccessCondition accessCondition)
释放容器上的租约。
Parameters:
Throws:
releaseLease
public final void releaseLease(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的访问条件、请求选项和操作上下文释放容器上的租约。
Parameters:
Throws:
renewLease
public final void renewLease(final AccessCondition accessCondition)
使用指定的访问条件续订现有租约。
Parameters:
Throws:
renewLease
public final void renewLease(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的访问条件、请求选项和操作上下文续订现有租约。
Parameters:
Throws:
setMetadata
public void setMetadata(final HashMap
通过调用设置要在容器 uploadMetadata() 上设置的名称/值对的元数据集合。 此集合将覆盖任何现有容器元数据。 如果将其设置为空集合,则会在调用时 uploadMetadata() 清除容器元数据。
Parameters:
java.util.HashMap
对象,表示要分配给容器的元数据。
setProperties
protected void setProperties(final BlobContainerProperties properties)
设置容器的属性。
Parameters:
setStorageUri
protected void setStorageUri(final StorageUri storageUri)
设置所有位置的 URI 列表。
Parameters:
uploadMetadata
public void uploadMetadata()
上传容器的元数据。
Throws:
uploadMetadata
public void uploadMetadata(AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文上传容器的元数据。
Parameters:
Throws:
uploadPermissions
public void uploadPermissions(final BlobContainerPermissions permissions)
上传容器的权限。
Parameters:
Throws:
uploadPermissions
public void uploadPermissions(final BlobContainerPermissions permissions, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)
使用指定的请求选项和操作上下文上传容器的权限。
Parameters:
Throws: