次の方法で共有


BlockBlobClient クラス

public final class BlockBlobClient
extends BlobClientBase

ブロック BLOB へのクライアント。 インスタンス化できるのは、 または メソッドgetBlockBlobClient()を使用SpecializedBlobClientBuilderする場合のみです。 このクラスは特定の BLOB に関する状態を保持しませんが、代わりにサービス上のリソースに適切な要求を送信する便利な方法です。

詳細については、 Azure Docs を参照してください。

フィールドの概要

修飾子と型 フィールドと説明
static final int MAX_BLOCKS

ブロック BLOB で許可されるブロックの最大数を示します。

static final int MAX_STAGE_BLOCK_BYTES

非推奨

MAX_STAGE_BLOCK_BYTES_LONG を使用します

ステージブロックの呼び出しで送信できる最大バイト数を示します。

static final long MAX_STAGE_BLOCK_BYTES_LONG

ステージブロックの呼び出しで送信できる最大バイト数を示します。

static final int MAX_UPLOAD_BLOB_BYTES

非推奨

MAX_STAGE_BLOCK_BYTES_LONG を使用してください。

アップロードする呼び出しで送信できる最大バイト数を示します。

static final long MAX_UPLOAD_BLOB_BYTES_LONG

アップロードする呼び出しで送信できる最大バイト数を示します。

メソッドの概要

修飾子と型 メソッドと説明
BlockBlobItem commitBlockList(List<String> base64BlockIds)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。

BlockBlobItem commitBlockList(List<String> base64BlockIds, boolean overwrite)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。

Response<BlockBlobItem> commitBlockListWithResponse(BlockBlobCommitBlockListOptions options, Duration timeout, Context context)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。

Response<BlockBlobItem> commitBlockListWithResponse(List<String> base64BlockIds, BlobHttpHeaders headers, Map<String,String> metadata, AccessTier tier, BlobRequestConditions requestConditions, Duration timeout, Context context)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。

BlobOutputStream getBlobOutputStream()

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlobOutputStream getBlobOutputStream(boolean overwrite)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlobOutputStream getBlobOutputStream(BlobRequestConditions requestConditions)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlobOutputStream getBlobOutputStream(ParallelTransferOptions parallelTransferOptions, BlobHttpHeaders headers, Map<String,String> metadata, AccessTier tier, BlobRequestConditions requestConditions)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options, Context context)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

BlockBlobClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

指定した BlockBlobClient を使用して、新しい customerProvidedKey を作成します。

BlockBlobClient getEncryptionScopeClient(String encryptionScope)

指定した BlockBlobClient を使用して、新しい encryptionScope を作成します。

BlockList listBlocks(BlockListType listType)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。

Response<BlockList> listBlocksWithResponse(BlockListType listType, String leaseId, Duration timeout, Context context)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。

Response<BlockList> listBlocksWithResponse(BlockBlobListBlocksOptions options, Duration timeout, Context context)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。

SeekableByteChannel openSeekableByteChannelWrite(BlockBlobSeekableByteChannelWriteOptions options)

書き込み専用モードでシーク可能なバイト チャネルを開き、BLOB をアップロードします。

void stageBlock(String base64BlockId, BinaryData data)

指定したブロックをブロック BLOB の "ステージング領域" にアップロードして、後でブロックリストをコミットする呼び出しによってコミットされます。

void stageBlock(String base64BlockId, InputStream data, long length)

指定したブロックをブロック BLOB の "ステージング領域" にアップロードして、後でブロックリストをコミットする呼び出しによってコミットされます。

void stageBlockFromUrl(String base64BlockId, String sourceUrl, BlobRange sourceRange)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。

Response<Void> stageBlockFromUrlWithResponse(BlockBlobStageBlockFromUrlOptions options, Duration timeout, Context context)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。

Response<Void> stageBlockFromUrlWithResponse(String base64BlockId, String sourceUrl, BlobRange sourceRange, byte[] sourceContentMd5, String leaseId, BlobRequestConditions sourceRequestConditions, Duration timeout, Context context)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。

Response<Void> stageBlockWithResponse(BlockBlobStageBlockOptions options, Duration timeout, Context context)

指定したブロックをブロック BLOB の "ステージング領域" にアップロードして、後でブロックリストをコミットする呼び出しによってコミットされます。

Response<Void> stageBlockWithResponse(String base64BlockId, InputStream data, long length, byte[] contentMd5, String leaseId, Duration timeout, Context context)

指定したブロックをブロック BLOB の "ステージング領域" にアップロードして、後でブロックリストをコミットする呼び出しによってコミットされます。

BlockBlobItem upload(BinaryData data)

新しいブロック BLOB を作成します。

BlockBlobItem upload(BinaryData data, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

BlockBlobItem upload(InputStream data, long length)

新しいブロック BLOB を作成します。

BlockBlobItem upload(InputStream data, long length, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

BlockBlobItem uploadFromUrl(String sourceUrl)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

BlockBlobItem uploadFromUrl(String sourceUrl, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

Response<BlockBlobItem> uploadFromUrlWithResponse(BlobUploadFromUrlOptions options, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

Response<BlockBlobItem> uploadWithResponse(BlockBlobSimpleUploadOptions options, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

Response<BlockBlobItem> uploadWithResponse(InputStream data, long length, BlobHttpHeaders headers, Map<String,String> metadata, AccessTier tier, byte[] contentMd5, BlobRequestConditions requestConditions, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

メソッドの継承元: BlobClientBase

abortCopyFromUrl abortCopyFromUrlWithResponse beginCopy beginCopy beginCopy copyFromUrl copyFromUrlWithResponse copyFromUrlWithResponse createSnapshot createSnapshotWithResponse delete deleteIfExists deleteIfExistsWithResponse deleteImmutabilityPolicy deleteImmutabilityPolicyWithResponse deleteWithResponse download downloadContent downloadContentWithResponse downloadContentWithResponse downloadStream downloadStreamWithResponse downloadToFile downloadToFile downloadToFileWithResponse downloadToFileWithResponse downloadToFileWithResponse downloadWithResponse exists existsWithResponse generateSas generateSas generateUserDelegationSas generateUserDelegationSas getAccountInfo getAccountInfoWithResponse getAccountName getAccountUrl getBlobName getBlobUrl getContainerClient getContainerName getCustomerProvidedKey getCustomerProvidedKeyClient getEncryptionScope getEncryptionScopeClient getHttpPipeline getProperties getPropertiesWithResponse getServiceVersion getSnapshotClient getSnapshotId getTags getTagsWithResponse getVersionClient getVersionId isSnapshot openInputStream openInputStream openInputStream openInputStream openQueryInputStream openQueryInputStreamWithResponse openSeekableByteChannelRead query queryWithResponse setAccessTier setAccessTierWithResponse setAccessTierWithResponse setHttpHeaders setHttpHeadersWithResponse setImmutabilityPolicy setImmutabilityPolicyWithResponse setLegalHold setLegalHoldWithResponse setMetadata setMetadataWithResponse setTags setTagsWithResponse undelete undeleteWithResponse

メソッドの継承元: java.lang.Object

フィールドの詳細

MAX_BLOCKS

public static final int MAX_BLOCKS

ブロック BLOB で許可されるブロックの最大数を示します。

MAX_STAGE_BLOCK_BYTES

@Deprecated
public static final int MAX_STAGE_BLOCK_BYTES

非推奨

MAX_STAGE_BLOCK_BYTES_LONG を使用します

stageBlock の呼び出しで送信できる最大バイト数を示します。

MAX_STAGE_BLOCK_BYTES_LONG

public static final long MAX_STAGE_BLOCK_BYTES_LONG

stageBlock の呼び出しで送信できる最大バイト数を示します。

MAX_UPLOAD_BLOB_BYTES

@Deprecated
public static final int MAX_UPLOAD_BLOB_BYTES

非推奨

MAX_STAGE_BLOCK_BYTES_LONG を使用してください。

アップロードする呼び出しで送信できる最大バイト数を示します。

MAX_UPLOAD_BLOB_BYTES_LONG

public static final long MAX_UPLOAD_BLOB_BYTES_LONG

アップロードする呼び出しで送信できる最大バイト数を示します。

メソッドの詳細

commitBlockList

public BlockBlobItem commitBlockList(List base64BlockIds)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。 BLOB の一部として書き込まれるには、前の stageBlock 操作でブロックがサーバーに正常に書き込まれている必要があります。 commitBlockList を呼び出して BLOB を更新するには、変更されたブロックのみをアップロードし、新しいブロックと既存のブロックをまとめてコミットします。 ブロック リストで指定されておらず、完全に削除されたブロック。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

System.out.printf("Committing block list completed. Last modified: %s%n",
     client.commitBlockList(Collections.singletonList(base64BlockId)).getLastModified());

パラメーター:

base64BlockIds - コミットするブロック ID を指定する base64 エンコード Stringのリスト。

戻り値:

ブロック BLOB の情報。

commitBlockList

public BlockBlobItem commitBlockList(List base64BlockIds, boolean overwrite)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。 BLOB の一部として書き込まれるには、前の stageBlock 操作でブロックがサーバーに正常に書き込まれている必要があります。 commitBlockList を呼び出して BLOB を更新するには、変更されたブロックのみをアップロードし、新しいブロックと既存のブロックをまとめてコミットします。 ブロック リストで指定されておらず、完全に削除されたブロック。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

boolean overwrite = false; // Default behavior
 System.out.printf("Committing block list completed. Last modified: %s%n",
     client.commitBlockList(Collections.singletonList(base64BlockId), overwrite).getLastModified());

パラメーター:

base64BlockIds - コミットするブロック ID を指定する base64 エンコード Stringのリスト。
overwrite - を上書きするかどうか。BLOB にデータが存在する必要があります。

戻り値:

ブロック BLOB の情報。

commitBlockListWithResponse

public Response commitBlockListWithResponse(BlockBlobCommitBlockListOptions options, Duration timeout, Context context)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。 BLOB の一部として書き込まれるには、前の stageBlock 操作でブロックがサーバーに正常に書き込まれている必要があります。 commitBlockList を呼び出して BLOB を更新するには、変更されたブロックのみをアップロードし、新しいブロックと既存のブロックをまとめてコミットします。 ブロック リストで指定されておらず、完全に削除されたブロック。 詳細については、 Azure Docs に関するページを参照してください。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

コード サンプル

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentMd5("data".getBytes(StandardCharsets.UTF_8))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 Map<String, String> tags = Collections.singletonMap("tag", "value");
 BlobRequestConditions requestConditions = new BlobRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Committing block list completed with status %d%n",
     client.commitBlockListWithResponse(
         new BlockBlobCommitBlockListOptions(Collections.singletonList(base64BlockId)).setHeaders(headers)
             .setMetadata(metadata).setTags(tags).setTier(AccessTier.HOT)
             .setRequestConditions(requestConditions), timeout, context)
         .getStatusCode());

パラメーター:

timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

ブロック BLOB の情報。

commitBlockListWithResponse

public Response commitBlockListWithResponse(List base64BlockIds, BlobHttpHeaders headers, Map metadata, AccessTier tier, BlobRequestConditions requestConditions, Duration timeout, Context context)

BLOB を構成するブロック ID の一覧を指定して、BLOB を書き込みます。 BLOB の一部として書き込まれるには、前の stageBlock 操作でブロックがサーバーに正常に書き込まれている必要があります。 commitBlockList を呼び出して BLOB を更新するには、変更されたブロックのみをアップロードし、新しいブロックと既存のブロックをまとめてコミットします。 ブロック リストで指定されておらず、完全に削除されたブロック。 詳細については、 Azure Docs に関するページを参照してください。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

コード サンプル

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentMd5(MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8)))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 BlobRequestConditions requestConditions = new BlobRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Committing block list completed with status %d%n",
     client.commitBlockListWithResponse(Collections.singletonList(base64BlockId), headers, metadata,
         AccessTier.HOT, requestConditions, timeout, context).getStatusCode());

パラメーター:

base64BlockIds - コミットするブロック ID を指定する base64 エンコード Stringのリスト。
headers - BlobHttpHeaders
metadata - BLOB に関連付けるメタデータ。 メタデータ キーまたは値に先頭または末尾の空白がある場合は、削除またはエンコードする必要があります。
tier - AccessTier 宛先 BLOB の場合は 。
requestConditions - BlobRequestConditions
timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

ブロック BLOB の情報。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream()

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(boolean overwrite)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

パラメーター:

overwrite - を上書きするかどうか。BLOB にデータが存在する必要があります。

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlobRequestConditions requestConditions)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。 サービスに BLOB が既に存在する場合は、上書きされます。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

パラメーター:

requestConditions - BlobRequestConditions BLOB のアクセス条件を表す オブジェクト。

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(ParallelTransferOptions parallelTransferOptions, BlobHttpHeaders headers, Map metadata, AccessTier tier, BlobRequestConditions requestConditions)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。 サービスに BLOB が既に存在する場合は、上書きされます。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

パラメーター:

parallelTransferOptions - ParallelTransferOptions バッファー内のアップロードを構成するために使用されます。
headers - BlobHttpHeaders
metadata - BLOB に関連付けるメタデータ。 メタデータ キーまたは値に先頭または末尾の空白がある場合は、削除またはエンコードする必要があります。
tier - AccessTier 宛先 BLOB の場合は 。
requestConditions - BlobRequestConditions

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。 サービスに BLOB が既に存在する場合は、上書きされます。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

パラメーター:

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options, Context context)

ブロック BLOB にデータを書き込む出力ストリームを作成して開きます。 サービスに BLOB が既に存在する場合は、上書きされます。

上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

注: 適切なサイズのバッファーを使用して書き込みを呼び出すことをお勧めします。これを行うには、以下で取得した BlobOutputStream を BufferedOutputStream でラップします。

パラメーター:

context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

BlobOutputStream BLOB にデータを書き込む際に使用される オブジェクト。

getCustomerProvidedKeyClient

public BlockBlobClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

指定した BlockBlobClient を使用して、新しい customerProvidedKey を作成します。

上書き:

BlockBlobClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

パラメーター:

customerProvidedKey - BLOB の には CustomerProvidedKey 、 を渡 null して、顧客が指定したキーを使用しません。

戻り値:

指定 BlockBlobClient した customerProvidedKeyを持つ 。

getEncryptionScopeClient

public BlockBlobClient getEncryptionScopeClient(String encryptionScope)

指定した BlockBlobClient を使用して、新しい encryptionScope を作成します。

上書き:

BlockBlobClient.getEncryptionScopeClient(String encryptionScope)

パラメーター:

encryptionScope - BLOB の暗号化スコープ。 を渡 null して暗号化スコープを使用しません。

戻り値:

指定 BlockBlobClient した encryptionScopeを持つ 。

listBlocks

public BlockList listBlocks(BlockListType listType)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

BlockList block = client.listBlocks(BlockListType.ALL);

 System.out.println("Committed Blocks:");
 block.getCommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

 System.out.println("Uncommitted Blocks:");
 block.getUncommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

パラメーター:

listType - 返すブロックの種類を指定します。

戻り値:

ブロックの一覧。

listBlocksWithResponse

public Response listBlocksWithResponse(BlockListType listType, String leaseId, Duration timeout, Context context)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

Context context = new Context("key", "value");
 BlockList block = client.listBlocksWithResponse(BlockListType.ALL, leaseId, timeout, context).getValue();

 System.out.println("Committed Blocks:");
 block.getCommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

 System.out.println("Uncommitted Blocks:");
 block.getUncommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

パラメーター:

listType - 返すブロックの種類を指定します。
leaseId - BLOB のアクティブなリースが一致する必要があるリース ID。
timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

ブロックの一覧。

listBlocksWithResponse

public Response listBlocksWithResponse(BlockBlobListBlocksOptions options, Duration timeout, Context context)

指定したブロック リスト フィルターを使用して、ブロック BLOB の一部としてアップロードされたブロックの一覧を返します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

Context context = new Context("key", "value");
 BlockList block = client.listBlocksWithResponse(new BlockBlobListBlocksOptions(BlockListType.ALL)
     .setLeaseId(leaseId)
     .setIfTagsMatch(tags), timeout, context).getValue();

 System.out.println("Committed Blocks:");
 block.getCommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

 System.out.println("Uncommitted Blocks:");
 block.getUncommittedBlocks().forEach(b -> System.out.printf("Name: %s, Size: %d", b.getName(), b.getSizeLong()));

パラメーター:

timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

ブロックの一覧。

openSeekableByteChannelWrite

public SeekableByteChannel openSeekableByteChannelWrite(BlockBlobSeekableByteChannelWriteOptions options)

書き込み専用モードでシーク可能なバイト チャネルを開き、BLOB をアップロードします。

パラメーター:

戻り値:

SeekableByteChannel BLOB への書き込みに使用するチャネルを表す オブジェクト。

stageBlock

public void stageBlock(String base64BlockId, BinaryData data)

commitBlockList の呼び出しによって後でコミットされるように、指定されたブロックをブロック BLOB の "ステージング領域" にアップロードします。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

BinaryData binaryData = BinaryData.fromStream(data, length);
 client.stageBlock(base64BlockId, binaryData);

パラメーター:

base64BlockId - このブロックの ID を指定する Base64 エンコード String 。 特定の BLOB のすべてのブロック ID は同じ長さである必要があることに注意してください。
data - ブロックに書き込むデータ。 これは BinaryData 長さを定義する必要があり、再試行が有効になっている場合は再生可能である必要があることに注意してください (既定値)。 を参照してください BinaryData#isReplayable()

stageBlock

public void stageBlock(String base64BlockId, InputStream data, long length)

commitBlockList の呼び出しによって後でコミットされるように、指定されたブロックをブロック BLOB の "ステージング領域" にアップロードします。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

client.stageBlock(base64BlockId, data, length);

パラメーター:

base64BlockId - このブロックの ID を指定する Base64 エンコード String 。 特定の BLOB のすべてのブロック ID は同じ長さである必要があることに注意してください。
data - ブロックに書き込むデータ。 データはマーク可能である必要があります。 これは、再試行をサポートするためです。 データがマーク可能でない場合は、 を使用 getBlobOutputStream() して、返された OutputStream に書き込む方法を検討してください。 または、データ ソースを BufferedInputStream にラップして、マークのサポートを追加することを検討してください。
length - データの正確な長さ。 この値は、 で InputStream提供されるデータの長さと正確に一致することが重要です。

stageBlockFromUrl

public void stageBlockFromUrl(String base64BlockId, String sourceUrl, BlobRange sourceRange)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

client.stageBlockFromUrl(base64BlockId, sourceUrl, new BlobRange(offset, count));

パラメーター:

base64BlockId - このブロックの ID を指定する Base64 エンコード String 。 特定の BLOB のすべてのブロック ID は同じ長さである必要があることに注意してください。
sourceUrl - コピーのソースとなる BLOB の URL。 同じストレージ アカウント内のソース BLOB は、共有キーを使用して認証できます。 ただし、ソースが別のアカウントの BLOB の場合、ソース BLOB はパブリックであるか、共有アクセス署名を使用して認証される必要があります。 ソース BLOB がパブリックの場合、操作を実行するために認証は必要ありません。
sourceRange - BlobRange

stageBlockFromUrlWithResponse

public Response stageBlockFromUrlWithResponse(BlockBlobStageBlockFromUrlOptions options, Duration timeout, Context context)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

BlobRequestConditions sourceRequestConditions = new BlobRequestConditions()
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Staging block from URL completed with status %d%n",
     client.stageBlockFromUrlWithResponse(new BlockBlobStageBlockFromUrlOptions(base64BlockId, sourceUrl)
         .setSourceRange(new BlobRange(offset, count)).setLeaseId(leaseId)
         .setSourceRequestConditions(sourceRequestConditions), timeout, context).getStatusCode());

パラメーター:

options - 操作のパラメーター
timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

状態コードと HTTP ヘッダーを含む応答

stageBlockFromUrlWithResponse

public Response stageBlockFromUrlWithResponse(String base64BlockId, String sourceUrl, BlobRange sourceRange, byte[] sourceContentMd5, String leaseId, BlobRequestConditions sourceRequestConditions, Duration timeout, Context context)

URL からコンテンツを読み取る BLOB の一部としてコミットされる新しいブロックを作成します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

BlobRequestConditions sourceRequestConditions = new BlobRequestConditions()
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Staging block from URL completed with status %d%n",
     client.stageBlockFromUrlWithResponse(base64BlockId, sourceUrl, new BlobRange(offset, count), null,
         leaseId, sourceRequestConditions, timeout, context).getStatusCode());

パラメーター:

base64BlockId - このブロックの ID を指定する Base64 エンコード String 。 特定の BLOB のすべてのブロック ID は同じ長さである必要があることに注意してください。
sourceUrl - コピーのソースとなる BLOB の URL。 同じストレージ アカウント内のソース BLOB は、共有キーを使用して認証できます。 ただし、ソースが別のアカウントの BLOB の場合、ソース BLOB はパブリックであるか、共有アクセス署名を使用して認証される必要があります。 ソース BLOB がパブリックの場合、操作を実行するために認証は必要ありません。
sourceRange - BlobRange
sourceContentMd5 - ブロックのコンテンツの MD5 ハッシュ。 このハッシュは、転送時のブロックの整合性を確認するために使用します。 このヘッダーを指定すると、ストレージ サービスによって、到達したコンテンツのハッシュと、このヘッダー値が比較されます。 この MD5 ハッシュは BLOB と共に保存されません。 2 つのハッシュが一致しない場合、操作は失敗します。
leaseId - BLOB のアクティブなリースが一致する必要があるリース ID。
sourceRequestConditions - BlobRequestConditions
timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

状態コードと HTTP ヘッダーを含む応答

stageBlockWithResponse

public Response stageBlockWithResponse(BlockBlobStageBlockOptions options, Duration timeout, Context context)

commitBlockList の呼び出しによって後でコミットされるように、指定されたブロックをブロック BLOB の "ステージング領域" にアップロードします。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

Context context = new Context("key", "value");
 BinaryData binaryData = BinaryData.fromStream(data, length);
 BlockBlobStageBlockOptions options = new BlockBlobStageBlockOptions(base64BlockId, binaryData)
     .setContentMd5(md5)
     .setLeaseId(leaseId);
 System.out.printf("Staging block completed with status %d%n",
     client.stageBlockWithResponse(options, timeout, context).getStatusCode());

パラメーター:

timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

状態コードと HTTP ヘッダーを含む応答

stageBlockWithResponse

public Response stageBlockWithResponse(String base64BlockId, InputStream data, long length, byte[] contentMd5, String leaseId, Duration timeout, Context context)

commitBlockList の呼び出しによって後でコミットされるように、指定されたブロックをブロック BLOB の "ステージング領域" にアップロードします。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

Context context = new Context("key", "value");
 System.out.printf("Staging block completed with status %d%n",
     client.stageBlockWithResponse(base64BlockId, data, length, md5, leaseId, timeout, context).getStatusCode());

パラメーター:

base64BlockId - このブロックの ID を指定する Base64 エンコード String 。 特定の BLOB のすべてのブロック ID は同じ長さである必要があることに注意してください。
data - ブロックに書き込むデータ。 データはマーク可能である必要があります。 これは、再試行をサポートするためです。 データがマーク可能でない場合は、 を使用 getBlobOutputStream() して、返された OutputStream に書き込む方法を検討してください。 または、データ ソースを BufferedInputStream にラップして、マークのサポートを追加することを検討してください。
length - データの正確な長さ。 この値は、 で InputStream提供されるデータの長さと正確に一致することが重要です。
contentMd5 - ブロックのコンテンツの MD5 ハッシュ。 このハッシュは、転送時のブロックの整合性を確認するために使用します。 このヘッダーを指定すると、ストレージ サービスによって、到達したコンテンツのハッシュと、このヘッダー値が比較されます。 この MD5 ハッシュは BLOB と共に保存されません。 2 つのハッシュが一致しない場合、操作は失敗します。
leaseId - BLOB のアクティブなリースが一致する必要があるリース ID。
timeout - が発生するオプションの RuntimeException タイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

状態コードと HTTP ヘッダーを含む応答

upload

public BlockBlobItem upload(BinaryData data)

新しいブロック BLOB を作成します。 既定では、このメソッドは既存の BLOB を上書きしません。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

BinaryData binaryData = BinaryData.fromStream(data, length);
 System.out.printf("Uploaded BlockBlob MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.upload(binaryData).getContentMd5()));

パラメーター:

data - ブロックに書き込むデータ。 これは BinaryData 長さが定義されている必要があり、再試行が有効になっている場合は再生可能である必要があることに注意してください (既定値) を参照してください BinaryData#isReplayable()

戻り値:

アップロードされたブロック BLOB の情報。

upload

public BlockBlobItem upload(BinaryData data, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

boolean overwrite = false;
 BinaryData binaryData = BinaryData.fromStream(data, length);
 System.out.printf("Uploaded BlockBlob MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.upload(binaryData, overwrite).getContentMd5()));

パラメーター:

data - ブロックに書き込むデータ。 これは BinaryData 長さが定義されている必要があり、再試行が有効になっている場合は再生可能である必要があることに注意してください (既定値) を参照してください BinaryData#isReplayable()
overwrite - を上書きするかどうか。BLOB にデータが存在する必要があります。

戻り値:

アップロードされたブロック BLOB の情報。

upload

public BlockBlobItem upload(InputStream data, long length)

新しいブロック BLOB を作成します。 既定では、このメソッドは既存の BLOB を上書きしません。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

System.out.printf("Uploaded BlockBlob MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.upload(data, length).getContentMd5()));

パラメーター:

data - BLOB に書き込むデータ。 データはマーク可能である必要があります。 これは再試行をサポートするためです。 データがマーク可能でない場合は、 を使用 getBlobOutputStream() して、返される OutputStream に書き込むかどうかを検討してください。 または、データ ソースを BufferedInputStream にラップしてマーク サポートを追加することを検討してください。
length - データの正確な長さ。 この値は、 で InputStream提供されるデータの長さと正確に一致することが重要です。

戻り値:

アップロードされたブロック BLOB の情報。

upload

public BlockBlobItem upload(InputStream data, long length, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

boolean overwrite = false;
 System.out.printf("Uploaded BlockBlob MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.upload(data, length, overwrite).getContentMd5()));

パラメーター:

data - BLOB に書き込むデータ。 データはマーク可能である必要があります。 これは再試行をサポートするためです。 データがマーク可能でない場合は、 を使用 getBlobOutputStream() して、返される OutputStream に書き込むかどうかを検討してください。 または、データ ソースを BufferedInputStream にラップしてマーク サポートを追加することを検討してください。
length - データの正確な長さ。 この値は、 で InputStream提供されるデータの長さと正確に一致することが重要です。
overwrite - を上書きするかどうか。BLOB にデータが存在する必要があります。

戻り値:

アップロードされたブロック BLOB の情報。

uploadFromUrl

public BlockBlobItem uploadFromUrl(String sourceUrl)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlobFromUrl ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

System.out.printf("Uploaded BlockBlob from URL, MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.uploadFromUrl(sourceUrl).getContentMd5()));

パラメーター:

sourceUrl - アップロード元のソース URL。

戻り値:

アップロードされたブロック BLOB の情報。

uploadFromUrl

public BlockBlobItem uploadFromUrl(String sourceUrl, boolean overwrite)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlobFromUrl ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 詳細については、 Azure Docs に関するページを参照してください。

コード サンプル

boolean overwrite = false;
 System.out.printf("Uploaded BlockBlob from URL, MD5 is %s%n",
     Base64.getEncoder().encodeToString(client.uploadFromUrl(sourceUrl, overwrite).getContentMd5()));

パラメーター:

sourceUrl - アップロード元のソース URL。
overwrite - を上書きするかどうか。BLOB にデータが存在する必要があります。

戻り値:

アップロードされたブロック BLOB の情報。

uploadFromUrlWithResponse

public Response uploadFromUrlWithResponse(BlobUploadFromUrlOptions options, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。

既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlobFromUrl ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 詳細については、 Azure Docs に関するページを参照してください。

上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

コード サンプル

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentMd5(MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8)))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 Map<String, String> tags = Collections.singletonMap("tag", "value");

 byte[] md5 = MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8));

 BlobRequestConditions requestConditions = new BlobRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Uploaded BlockBlob MD5 is %s%n", Base64.getEncoder()
     .encodeToString(client.uploadFromUrlWithResponse(new BlobUploadFromUrlOptions(sourceUrl)
         .setHeaders(headers).setTags(tags).setTier(AccessTier.HOT).setContentMd5(md5)
         .setDestinationRequestConditions(requestConditions), timeout, context)
         .getValue()
         .getContentMd5()));

パラメーター:

timeout - を引き RuntimeException 上げる省略可能なタイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

アップロードされたブロック BLOB の情報。

uploadWithResponse

public Response uploadWithResponse(BlockBlobSimpleUploadOptions options, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

コード サンプル

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentMd5(MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8)))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 Map<String, String> tags = Collections.singletonMap("tag", "value");

 byte[] md5 = MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8));

 BlobRequestConditions requestConditions = new BlobRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Uploaded BlockBlob MD5 is %s%n", Base64.getEncoder()
     .encodeToString(client.uploadWithResponse(new BlockBlobSimpleUploadOptions(data, length)
         .setHeaders(headers).setMetadata(metadata).setTags(tags).setTier(AccessTier.HOT).setContentMd5(md5)
         .setRequestConditions(requestConditions), timeout, context)
         .getValue()
         .getContentMd5()));

パラメーター:

timeout - を引き RuntimeException 上げる省略可能なタイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

アップロードされたブロック BLOB の情報。

uploadWithResponse

public Response uploadWithResponse(InputStream data, long length, BlobHttpHeaders headers, Map metadata, AccessTier tier, byte[] contentMd5, BlobRequestConditions requestConditions, Duration timeout, Context context)

新しいブロック BLOB を作成するか、既存のブロック BLOB の内容を更新します。 既存のブロック BLOB を更新すると、BLOB の既存のメタデータは上書きされます。 部分的な更新は PutBlob ではサポートされていません。既存の BLOB のコンテンツは、新しいコンテンツで上書きされます。 ブロック BLOB の部分的な更新を実行するには、PutBlock と PutBlockList を使用します。 詳細については、 Azure Docs に関するページを参照してください。

上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。

コード サンプル

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentMd5(MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8)))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");

 byte[] md5 = MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8));

 BlobRequestConditions requestConditions = new BlobRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Context context = new Context("key", "value");

 System.out.printf("Uploaded BlockBlob MD5 is %s%n", Base64.getEncoder()
     .encodeToString(client.uploadWithResponse(data, length, headers, metadata, AccessTier.HOT, md5,
         requestConditions, timeout, context)
         .getValue()
         .getContentMd5()));

パラメーター:

data - BLOB に書き込むデータ。 データはマーク可能である必要があります。 これは再試行をサポートするためです。 データがマーク可能でない場合は、 を使用 getBlobOutputStream() して、返される OutputStream に書き込むかどうかを検討してください。 または、データ ソースを BufferedInputStream にラップしてマーク サポートを追加することを検討してください。
length - データの正確な長さ。 この値は、 で InputStream提供されるデータの長さと正確に一致することが重要です。
headers - BlobHttpHeaders
metadata - BLOB に関連付けるメタデータ。 メタデータ キーまたは値に先頭または末尾の空白がある場合は、削除またはエンコードする必要があります。
tier - AccessTier 宛先 BLOB の 。
contentMd5 - ブロックのコンテンツの MD5 ハッシュ。 このハッシュは、転送時のブロックの整合性を確認するために使用します。 このヘッダーを指定すると、ストレージ サービスによって、到達したコンテンツのハッシュと、このヘッダー値が比較されます。 この MD5 ハッシュは BLOB と共に保存されません。 2 つのハッシュが一致しない場合、操作は失敗します。
requestConditions - BlobRequestConditions
timeout - を引き RuntimeException 上げる省略可能なタイムアウト値。
context - サービス呼び出し中に Http パイプラインを介して渡される追加のコンテキスト。

戻り値:

アップロードされたブロック BLOB の情報。

適用対象