public final class BlockBlobURL extends BlobURL
ContainerURL
object. This class does not hold any state about a particular blob but is instead a convenient
way of sending off appropriate requests to the resource on the service. Please refer to the
Azure Docs
for more information on block blobs.Modifier and Type | Field and Description |
---|---|
static int |
MAX_BLOCKS
Indicates the maximum number of blocks allowed in a block blob.
|
static int |
MAX_STAGE_BLOCK_BYTES
Indicates the maximum number of bytes that can be sent in a call to stageBlock.
|
static int |
MAX_UPLOAD_BLOB_BYTES
Indicates the maximum number of bytes that can be sent in a call to upload.
|
storageClient
Constructor and Description |
---|
BlockBlobURL(URL url,
com.microsoft.rest.v2.http.HttpPipeline pipeline)
Creates a
BlockBlobURL object pointing to the account specified by the URL and using the provided
pipeline to make HTTP requests. |
Modifier and Type | Method and Description |
---|---|
io.reactivex.Single<BlockBlobCommitBlockListResponse> |
commitBlockList(List<String> base64BlockIDs)
Writes a blob by specifying the list of block IDs that are to make up the blob.
|
io.reactivex.Single<BlockBlobCommitBlockListResponse> |
commitBlockList(List<String> base64BlockIDs,
BlobHTTPHeaders headers,
Metadata metadata,
BlobAccessConditions accessConditions,
com.microsoft.rest.v2.Context context)
Writes a blob by specifying the list of block IDs that are to make up the blob.
|
io.reactivex.Single<BlockBlobGetBlockListResponse> |
getBlockList(BlockListType listType)
Returns the list of blocks that have been uploaded as part of a block blob using the specified block list filter.
|
io.reactivex.Single<BlockBlobGetBlockListResponse> |
getBlockList(BlockListType listType,
LeaseAccessConditions leaseAccessConditions,
com.microsoft.rest.v2.Context context)
Returns the list of blocks that have been uploaded as part of a block blob using the specified block list filter.
|
io.reactivex.Single<BlockBlobStageBlockResponse> |
stageBlock(String base64BlockID,
io.reactivex.Flowable<ByteBuffer> data,
long length)
Uploads the specified block to the block blob's "staging area" to be later committed by a call to
commitBlockList.
|
io.reactivex.Single<BlockBlobStageBlockResponse> |
stageBlock(String base64BlockID,
io.reactivex.Flowable<ByteBuffer> data,
long length,
LeaseAccessConditions leaseAccessConditions,
com.microsoft.rest.v2.Context context)
Uploads the specified block to the block blob's "staging area" to be later committed by a call to
commitBlockList.
|
io.reactivex.Single<BlockBlobStageBlockFromURLResponse> |
stageBlockFromURL(String base64BlockID,
URL sourceURL,
BlobRange sourceRange)
Creates a new block to be committed as part of a blob where the contents are read from a URL.
|
io.reactivex.Single<BlockBlobStageBlockFromURLResponse> |
stageBlockFromURL(String base64BlockID,
URL sourceURL,
BlobRange sourceRange,
byte[] sourceContentMD5,
LeaseAccessConditions leaseAccessConditions,
SourceModifiedAccessConditions sourceModifiedAccessConditions,
com.microsoft.rest.v2.Context context)
Creates a new block to be committed as part of a blob where the contents are read from a URL.
|
io.reactivex.Single<BlockBlobUploadResponse> |
upload(io.reactivex.Flowable<ByteBuffer> data,
long length)
Creates a new block blob, or updates the content of an existing block blob.
|
io.reactivex.Single<BlockBlobUploadResponse> |
upload(io.reactivex.Flowable<ByteBuffer> data,
long length,
BlobHTTPHeaders headers,
Metadata metadata,
BlobAccessConditions accessConditions,
com.microsoft.rest.v2.Context context)
Creates a new block blob, or updates the content of an existing block blob.
|
BlockBlobURL |
withPipeline(com.microsoft.rest.v2.http.HttpPipeline pipeline)
Creates a new
BlockBlobURL with the given pipeline. |
BlockBlobURL |
withSnapshot(String snapshot)
Creates a new
BlockBlobURL with the given snapshot. |
abortCopyFromURL, abortCopyFromURL, acquireLease, acquireLease, breakLease, breakLease, changeLease, changeLease, createSnapshot, createSnapshot, delete, delete, download, download, getAccountInfo, getAccountInfo, getProperties, getProperties, releaseLease, releaseLease, renewLease, renewLease, setHTTPHeaders, setHTTPHeaders, setMetadata, setMetadata, setTier, setTier, startCopyFromURL, startCopyFromURL, syncCopyFromURL, syncCopyFromURL, toAppendBlobURL, toBlockBlobURL, toPageBlobURL, undelete, undelete
appendToURLPath, createPipeline, createPipeline, createPipeline, createPipeline, toString, toURL
public static final int MAX_UPLOAD_BLOB_BYTES
public static final int MAX_STAGE_BLOCK_BYTES
public static final int MAX_BLOCKS
public BlockBlobURL(URL url, com.microsoft.rest.v2.http.HttpPipeline pipeline)
BlockBlobURL
object pointing to the account specified by the URL and using the provided
pipeline to make HTTP requests.url
- A URL
to an Azure Storage block blob.pipeline
- A HttpPipeline
which configures the behavior of HTTP exchanges. Please refer to
StorageURL.createPipeline(ICredentials, PipelineOptions)
for more information.public BlockBlobURL withPipeline(com.microsoft.rest.v2.http.HttpPipeline pipeline)
BlockBlobURL
with the given pipeline.withPipeline
in class BlobURL
pipeline
- An HttpPipeline
object to set.BlockBlobURL
object with the given pipeline.public BlockBlobURL withSnapshot(String snapshot) throws MalformedURLException, UnknownHostException
BlockBlobURL
with the given snapshot.withSnapshot
in class BlobURL
snapshot
- A String
of the snapshot identifier.BlockBlobURL
object with the given pipeline.MalformedURLException
- Appending the specified snapshot produced an invalid URL.UnknownHostException
- If the url contains an improperly formatted ipaddress or unknown host address.public io.reactivex.Single<BlockBlobUploadResponse> upload(io.reactivex.Flowable<ByteBuffer> data, long length)
Note that the data passed must be replayable if retries are enabled (the default). In other words, the
Flowable
must produce the same data each time it is subscribed to.
For more efficient bulk-upload scenarios, please refer to the TransferManager
for convenience methods.
data
- The data to write to the blob. Note that this Flowable
must be replayable if retries are enabled
(the default). In other words, the Flowable must produce the same data each time it is subscribed to.length
- The exact length of the data. It is important that this value match precisely the length of the data
emitted by the Flowable
.public io.reactivex.Single<BlockBlobUploadResponse> upload(io.reactivex.Flowable<ByteBuffer> data, long length, BlobHTTPHeaders headers, Metadata metadata, BlobAccessConditions accessConditions, com.microsoft.rest.v2.Context context)
Note that the data passed must be replayable if retries are enabled (the default). In other words, the
Flowable
must produce the same data each time it is subscribed to.
For more efficient bulk-upload scenarios, please refer to the TransferManager
for convenience methods.
data
- The data to write to the blob. Note that this Flowable
must be replayable if retries are enabled
(the default). In other words, the Flowable must produce the same data each time it is subscribed to.length
- The exact length of the data. It is important that this value match precisely the length of the data
emitted by the Flowable
.headers
- BlobHTTPHeaders
metadata
- Metadata
accessConditions
- BlobAccessConditions
context
- Context
offers a means of passing arbitrary data (key/value pairs) to an
HttpPipeline
's policy objects. Most applications do not need to pass
arbitrary data to the pipeline and can pass Context.NONE
or null
. Each context object is
immutable. The withContext
with data method creates a new Context
object that refers to
its parent, forming a linked list.public io.reactivex.Single<BlockBlobStageBlockResponse> stageBlock(String base64BlockID, io.reactivex.Flowable<ByteBuffer> data, long length)
Note that the data passed must be replayable if retries are enabled (the default). In other words, the
Flowable
must produce the same data each time it is subscribed to.
base64BlockID
- A Base64 encoded String
that specifies the ID for this block. Note that all block ids for a given
blob must be the same length.data
- The data to write to the block. Note that this Flowable
must be replayable if retries are enabled
(the default). In other words, the Flowable must produce the same data each time it is subscribed to.length
- The exact length of the data. It is important that this value match precisely the length of the data
emitted by the Flowable
.public io.reactivex.Single<BlockBlobStageBlockResponse> stageBlock(String base64BlockID, io.reactivex.Flowable<ByteBuffer> data, long length, LeaseAccessConditions leaseAccessConditions, com.microsoft.rest.v2.Context context)
Note that the data passed must be replayable if retries are enabled (the default). In other words, the
Flowable
must produce the same data each time it is subscribed to.
base64BlockID
- A Base64 encoded String
that specifies the ID for this block. Note that all block ids for a given
blob must be the same length.data
- The data to write to the block. Note that this Flowable
must be replayable if retries are enabled
(the default). In other words, the Flowable must produce the same data each time it is subscribed to.length
- The exact length of the data. It is important that this value match precisely the length of the data
emitted by the Flowable
.leaseAccessConditions
- By setting lease access conditions, requests will fail if the provided lease does not match the active
lease on the blob.context
- Context
offers a means of passing arbitrary data (key/value pairs) to an
HttpPipeline
's policy objects. Most applications do not need to pass
arbitrary data to the pipeline and can pass Context.NONE
or null
. Each context object is
immutable. The withContext
with data method creates a new Context
object that refers to
its parent, forming a linked list.public io.reactivex.Single<BlockBlobStageBlockFromURLResponse> stageBlockFromURL(String base64BlockID, URL sourceURL, BlobRange sourceRange)
base64BlockID
- A Base64 encoded String
that specifies the ID for this block. Note that all block ids for a given
blob must be the same length.sourceURL
- The url to the blob that will be the source of the copy. A source blob in the same storage account can be
authenticated via Shared Key. However, if the source is a blob in another account, the source blob must
either be public or must be authenticated via a shared access signature. If the source blob is public, no
authentication is required to perform the operation.sourceRange
- BlobRange
public io.reactivex.Single<BlockBlobStageBlockFromURLResponse> stageBlockFromURL(String base64BlockID, URL sourceURL, BlobRange sourceRange, byte[] sourceContentMD5, LeaseAccessConditions leaseAccessConditions, SourceModifiedAccessConditions sourceModifiedAccessConditions, com.microsoft.rest.v2.Context context)
base64BlockID
- A Base64 encoded String
that specifies the ID for this block. Note that all block ids for a given
blob must be the same length.sourceURL
- The url to the blob that will be the source of the copy. A source blob in the same storage account can
be authenticated via Shared Key. However, if the source is a blob in another account, the source blob
must either be public or must be authenticated via a shared access signature. If the source blob is
public, no authentication is required to perform the operation.sourceRange
- BlobRange
sourceContentMD5
- An MD5 hash of the block content from the source blob. If specified, the service will calculate the MD5
of the received data and fail the request if it does not match the provided MD5.leaseAccessConditions
- By setting lease access conditions, requests will fail if the provided lease does not match the active
lease on the blob.sourceModifiedAccessConditions
- SourceModifiedAccessConditions
context
- Context
offers a means of passing arbitrary data (key/value pairs) to an
HttpPipeline
's policy objects. Most applications do not need to pass
arbitrary data to the pipeline and can pass Context.NONE
or null
. Each context object is
immutable. The withContext
with data method creates a new Context
object that refers to
its parent, forming a linked list.public io.reactivex.Single<BlockBlobGetBlockListResponse> getBlockList(BlockListType listType)
listType
- Specifies which type of blocks to return.public io.reactivex.Single<BlockBlobGetBlockListResponse> getBlockList(BlockListType listType, LeaseAccessConditions leaseAccessConditions, com.microsoft.rest.v2.Context context)
listType
- Specifies which type of blocks to return.leaseAccessConditions
- By setting lease access conditions, requests will fail if the provided lease does not match the active
lease on the blob.context
- Context
offers a means of passing arbitrary data (key/value pairs) to an
HttpPipeline
's policy objects. Most applications do not need to pass
arbitrary data to the pipeline and can pass Context.NONE
or null
. Each context object is
immutable. The withContext
with data method creates a new Context
object that refers to
its parent, forming a linked list.public io.reactivex.Single<BlockBlobCommitBlockListResponse> commitBlockList(List<String> base64BlockIDs)
For more efficient bulk-upload scenarios, please refer to the TransferManager
for convenience methods.
base64BlockIDs
- A list of base64 encode String
s that specifies the block IDs to be committed.public io.reactivex.Single<BlockBlobCommitBlockListResponse> commitBlockList(List<String> base64BlockIDs, BlobHTTPHeaders headers, Metadata metadata, BlobAccessConditions accessConditions, com.microsoft.rest.v2.Context context)
For more efficient bulk-upload scenarios, please refer to the TransferManager
for convenience methods.
base64BlockIDs
- A list of base64 encode String
s that specifies the block IDs to be committed.headers
- BlobHTTPHeaders
metadata
- Metadata
accessConditions
- BlobAccessConditions
context
- Context
offers a means of passing arbitrary data (key/value pairs) to an
HttpPipeline
's policy objects. Most applications do not need to pass
arbitrary data to the pipeline and can pass Context.NONE
or null
. Each context object is
immutable. The withContext
with data method creates a new Context
object that refers to
its parent, forming a linked list.Copyright © 2019 Microsoft Corporation. All rights reserved.