BlockBlobClient Classe

public final class BlockBlobClient
extends BlobClientBase

Client vers un objet blob de blocs. Il peut uniquement être instancié via un SpecializedBlobClientBuilder ou via la méthode getBlockBlobClient(). Cette classe ne contient aucun état sur un objet blob particulier, mais elle est plutôt un moyen pratique d’envoyer des requêtes appropriées à la ressource sur le service.

Pour plus d’informations, consultez Azure Docs .

Récapitulatif du champ

Modificateur et type Champ et description
static final int MAX_BLOCKS

Indique le nombre maximal de blocs autorisé dans un objet blob de blocs.

static final int MAX_STAGE_BLOCK_BYTES

Déprécié

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à l’étapeBlock.

static final long MAX_STAGE_BLOCK_BYTES_LONG

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à l’étapeBlock.

static final int MAX_UPLOAD_BLOB_BYTES

Déprécié

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à charger.

static final long MAX_UPLOAD_BLOB_BYTES_LONG

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à charger.

Résumé de la méthode

Modificateur et type Méthode et description
BlockBlobItem commitBlockList(List<String> base64BlockIds)

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob.

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

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob.

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

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob.

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

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob.

BlobOutputStream getBlobOutputStream()

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

BlobOutputStream getBlobOutputStream(boolean overwrite)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

BlobOutputStream getBlobOutputStream(BlobRequestConditions requestConditions)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

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

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options, Context context)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

BlockBlobClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crée un nouveau BlockBlobClient avec le customerProvidedKey spécifié.

BlockBlobClient getEncryptionScopeClient(String encryptionScope)

Crée un nouveau BlockBlobClient avec le encryptionScope spécifié.

BlockList listBlocks(BlockListType listType)

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié.

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

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié.

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

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié.

SeekableByteChannel openSeekableByteChannelWrite(BlockBlobSeekableByteChannelWriteOptions options)

Ouvre un canal d’octets pouvant être recherché en mode écriture seule pour charger l’objet blob.

void stageBlock(String base64BlockId, BinaryData data)

Charge le bloc spécifié dans la « zone de préproduction » de l’objet blob de blocs pour être validé ultérieurement par un appel à validerla liste de blocs.

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

Charge le bloc spécifié dans la « zone de préproduction » de l’objet blob de blocs pour être validé ultérieurement par un appel à validerla liste de blocs.

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL.

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL.

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL.

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

Charge le bloc spécifié dans la « zone de préproduction » de l’objet blob de blocs pour être validé ultérieurement par un appel à validerla liste de blocs.

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

Charge le bloc spécifié dans la « zone de préproduction » de l’objet blob de blocs pour être validé ultérieurement par un appel à validerla liste de blocs.

BlockBlobItem upload(BinaryData data)

Crée un objet blob de blocs.

BlockBlobItem upload(BinaryData data, boolean overwrite)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

BlockBlobItem upload(InputStream data, long length)

Crée un objet blob de blocs.

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

BlockBlobItem uploadFromUrl(String sourceUrl)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

BlockBlobItem uploadFromUrl(String sourceUrl, boolean overwrite)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

Méthodes héritées de 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

Méthodes héritées de java.lang.Object

Détails du champ

MAX_BLOCKS

public static final int MAX_BLOCKS

Indique le nombre maximal de blocs autorisé dans un objet blob de blocs.

MAX_STAGE_BLOCK_BYTES

@Deprecated
public static final int MAX_STAGE_BLOCK_BYTES

Déprécié

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à stageBlock.

MAX_STAGE_BLOCK_BYTES_LONG

public static final long MAX_STAGE_BLOCK_BYTES_LONG

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à stageBlock.

MAX_UPLOAD_BLOB_BYTES

@Deprecated
public static final int MAX_UPLOAD_BLOB_BYTES

Déprécié

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à charger.

MAX_UPLOAD_BLOB_BYTES_LONG

public static final long MAX_UPLOAD_BLOB_BYTES_LONG

Indique le nombre maximal d’octets pouvant être envoyés dans un appel à charger.

Détails de la méthode

commitBlockList

public BlockBlobItem commitBlockList(List base64BlockIds)

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob. Pour être écrit dans le cadre d’un objet blob, un bloc doit avoir été correctement écrit sur le serveur dans une opération stageBlock précédente. Vous pouvez appeler commitBlockList pour mettre à jour un objet blob en chargeant uniquement les blocs qui ont changé, puis en validant ensemble les blocs nouveaux et existants. Tous les blocs non spécifiés dans la liste de blocs et supprimés définitivement. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

base64BlockIds - Liste des codes Stringen base64 qui spécifie les ID de bloc à commiter.

Retours:

Informations de l’objet blob de blocs.

commitBlockList

public BlockBlobItem commitBlockList(List base64BlockIds, boolean overwrite)

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob. Pour être écrit dans le cadre d’un objet blob, un bloc doit avoir été correctement écrit sur le serveur dans une opération stageBlock précédente. Vous pouvez appeler commitBlockList pour mettre à jour un objet blob en chargeant uniquement les blocs qui ont changé, puis en validant ensemble les blocs nouveaux et existants. Tous les blocs non spécifiés dans la liste de blocs et supprimés définitivement. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

base64BlockIds - Liste des codes Stringen base64 qui spécifie les ID de bloc à commiter.
overwrite - Indique s’il faut remplacer des données sur l’objet blob.

Retours:

Informations de l’objet blob de blocs.

commitBlockListWithResponse

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

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob. Pour être écrit dans le cadre d’un objet blob, un bloc doit avoir été correctement écrit sur le serveur dans une opération stageBlock précédente. Vous pouvez appeler commitBlockList pour mettre à jour un objet blob en chargeant uniquement les blocs qui ont changé, puis en validant ensemble les blocs nouveaux et existants. Tous les blocs non spécifiés dans la liste de blocs et supprimés définitivement. Pour plus d’informations, consultez Azure Docs.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

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());

Paramètres:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Informations de l’objet blob de blocs.

commitBlockListWithResponse

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

Écrit un objet blob en spécifiant la liste des ID de bloc qui doivent créer l’objet blob. Pour être écrit dans le cadre d’un objet blob, un bloc doit avoir été correctement écrit sur le serveur dans une opération stageBlock précédente. Vous pouvez appeler commitBlockList pour mettre à jour un objet blob en chargeant uniquement les blocs qui ont changé, puis en validant ensemble les blocs nouveaux et existants. Tous les blocs non spécifiés dans la liste de blocs et supprimés définitivement. Pour plus d’informations, consultez Azure Docs.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

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());

Paramètres:

base64BlockIds - Liste des codes Stringen base64 qui spécifie les ID de bloc à commiter.
headers - BlobHttpHeaders
metadata - Métadonnées à associer à l’objet blob. S’il existe un espace blanc de début ou de fin dans une clé ou une valeur de métadonnées, il doit être supprimé ou encodé.
tier - AccessTier pour l’objet blob de destination.
requestConditions - BlobRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Informations de l’objet blob de blocs.

getBlobOutputStream

public BlobOutputStream getBlobOutputStream()

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(boolean overwrite)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs.

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Paramètres:

overwrite - Indique s’il faut remplacer des données sur l’objet blob.

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlobRequestConditions requestConditions)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs. Si l’objet blob existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Paramètres:

requestConditions - Objet BlobRequestConditions qui représente les conditions d’accès pour l’objet blob.

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getBlobOutputStream

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

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs. Si l’objet blob existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Paramètres:

parallelTransferOptions - ParallelTransferOptions permet de configurer le chargement en mémoire tampon.
headers - BlobHttpHeaders
metadata - Métadonnées à associer à l’objet blob. S’il existe un espace blanc de début ou de fin dans une clé ou une valeur de métadonnées, il doit être supprimé ou encodé.
tier - AccessTier pour l’objet blob de destination.
requestConditions - BlobRequestConditions

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs. Si l’objet blob existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Paramètres:

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getBlobOutputStream

public BlobOutputStream getBlobOutputStream(BlockBlobOutputStreamOptions options, Context context)

Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob de blocs. Si l’objet blob existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Remarque : Nous vous recommandons d’appeler write avec des mémoires tampons de taille raisonnable. Vous pouvez le faire en encapsulant le BlobOutputStream obtenu ci-dessous avec un BufferedOutputStream.

Paramètres:

context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Objet BlobOutputStream utilisé pour écrire des données dans l’objet blob.

getCustomerProvidedKeyClient

public BlockBlobClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crée un nouveau BlockBlobClient avec le customerProvidedKey spécifié.

Remplacements:

BlockBlobClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Paramètres:

customerProvidedKey - pour l’objet blob, passez null pour utiliser aucune clé fournie par le CustomerProvidedKey client.

Retours:

avec BlockBlobClient le spécifié customerProvidedKey.

getEncryptionScopeClient

public BlockBlobClient getEncryptionScopeClient(String encryptionScope)

Crée un nouveau BlockBlobClient avec le encryptionScope spécifié.

Remplacements:

BlockBlobClient.getEncryptionScopeClient(String encryptionScope)

Paramètres:

encryptionScope - l’étendue de chiffrement pour l’objet blob, passe null pour utiliser aucune étendue de chiffrement.

Retours:

avec BlockBlobClient le spécifié encryptionScope.

listBlocks

public BlockList listBlocks(BlockListType listType)

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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()));

Paramètres:

listType - Spécifie le type de blocs à retourner.

Retours:

Liste des blocs.

listBlocksWithResponse

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

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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()));

Paramètres:

listType - Spécifie le type de blocs à retourner.
leaseId - ID de bail que le bail actif sur l’objet blob doit correspondre.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Liste des blocs.

listBlocksWithResponse

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

Retourne la liste des blocs qui ont été chargés dans le cadre d’un objet blob de blocs à l’aide du filtre de liste de blocs spécifié. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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()));

Paramètres:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Liste des blocs.

openSeekableByteChannelWrite

public SeekableByteChannel openSeekableByteChannelWrite(BlockBlobSeekableByteChannelWriteOptions options)

Ouvre un canal d’octets pouvant être recherché en mode écriture seule pour charger l’objet blob.

Paramètres:

Retours:

Objet SeekableByteChannel qui représente le canal à utiliser pour écrire dans l’objet blob.

stageBlock

public void stageBlock(String base64BlockId, BinaryData data)

Charge le bloc spécifié dans la « zone intermédiaire » de l’objet blob de blocs pour être validé ultérieurement par un appel à commitBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

base64BlockId - Encodé String en Base64 qui spécifie l’ID de ce bloc. Notez que tous les ID de bloc d’un objet blob donné doivent avoir la même longueur.
data - Données à écrire dans le bloc. Notez que celle-ci BinaryData doit avoir une longueur définie et doit être relue si les nouvelles tentatives sont activées (valeur par défaut). Consultez BinaryData#isReplayable().

stageBlock

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

Charge le bloc spécifié dans la « zone intermédiaire » de l’objet blob de blocs pour être validé ultérieurement par un appel à commitBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

client.stageBlock(base64BlockId, data, length);

Paramètres:

base64BlockId - Encodé String en Base64 qui spécifie l’ID de ce bloc. Notez que tous les ID de bloc d’un objet blob donné doivent avoir la même longueur.
data - Données à écrire dans le bloc. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’utiliser getBlobOutputStream() et d’écrire dans le OutputStream retourné. Vous pouvez également inclure votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans le InputStream.

stageBlockFromUrl

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

base64BlockId - Encodé String en Base64 qui spécifie l’ID de ce bloc. Notez que tous les ID de bloc d’un objet blob donné doivent avoir la même longueur.
sourceUrl - URL de l’objet blob qui sera la source de la copie. Un objet blob source dans le même compte de stockage peut être authentifié via une clé partagée. Toutefois, si la source est un objet blob dans un autre compte, l’objet blob source doit être public ou doit être authentifié via une signature d’accès partagé. Si l’objet blob source est public, aucune authentification n’est requise pour effectuer l’opération.
sourceRange - BlobRange

stageBlockFromUrlWithResponse

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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());

Paramètres:

options - Paramètres de l’opération
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Réponse contenant du code status et des en-têtes HTTP

stageBlockFromUrlWithResponse

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

Crée un bloc à commiter dans le cadre d’un objet blob où le contenu est lu à partir d’une URL. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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());

Paramètres:

base64BlockId - Encodé String en Base64 qui spécifie l’ID de ce bloc. Notez que tous les ID de bloc d’un objet blob donné doivent avoir la même longueur.
sourceUrl - URL de l’objet blob qui sera la source de la copie. Un objet blob source dans le même compte de stockage peut être authentifié via une clé partagée. Toutefois, si la source est un objet blob dans un autre compte, l’objet blob source doit être public ou doit être authentifié via une signature d’accès partagé. Si l’objet blob source est public, aucune authentification n’est requise pour effectuer l’opération.
sourceRange - BlobRange
sourceContentMd5 - Un hachage MD5 du contenu du bloc. Ce hachage est utilisé pour vérifier l'intégrité du bloc pendant le transport. Lorsque cet en-tête est spécifié, le service de stockage compare le hachage du contenu qui est arrivé à cette valeur d'en-tête. Notez que ce hachage MD5 n'est pas stocké avec l'objet blob. Si les deux hachages ne correspondent pas, l’opération échoue.
leaseId - ID de bail auquel le bail actif sur l’objet blob doit correspondre.
sourceRequestConditions - BlobRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Réponse contenant du code status et des en-têtes HTTP

stageBlockWithResponse

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

Charge le bloc spécifié dans la « zone intermédiaire » de l’objet blob de blocs pour être validé ultérieurement par un appel à commitBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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());

Paramètres:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Réponse contenant du code status et des en-têtes HTTP

stageBlockWithResponse

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

Charge le bloc spécifié dans la « zone intermédiaire » de l’objet blob de blocs pour être validé ultérieurement par un appel à commitBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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());

Paramètres:

base64BlockId - Encodé String en Base64 qui spécifie l’ID de ce bloc. Notez que tous les ID de bloc d’un objet blob donné doivent avoir la même longueur.
data - Données à écrire dans le bloc. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’utiliser getBlobOutputStream() et d’écrire dans le OutputStream retourné. Vous pouvez également inclure votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans le InputStream.
contentMd5 - Un hachage MD5 du contenu du bloc. Ce hachage est utilisé pour vérifier l'intégrité du bloc pendant le transport. Lorsque cet en-tête est spécifié, le service de stockage compare le hachage du contenu qui est arrivé à cette valeur d'en-tête. Notez que ce hachage MD5 n'est pas stocké avec l'objet blob. Si les deux hachages ne correspondent pas, l’opération échoue.
leaseId - ID de bail que le bail actif sur l’objet blob doit correspondre.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Réponse contenant du code status et des en-têtes HTTP

upload

public BlockBlobItem upload(BinaryData data)

Crée un objet blob de blocs. Par défaut, cette méthode ne remplace pas un objet blob existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

data - Données à écrire dans le bloc. Notez que cela BinaryData doit avoir une longueur définie et doit être relectable si les nouvelles tentatives sont activées (la valeur par défaut), consultez BinaryData#isReplayable().

Retours:

Informations de l’objet blob de blocs chargé.

upload

public BlockBlobItem upload(BinaryData data, boolean overwrite)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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()));

Paramètres:

data - Données à écrire dans le bloc. Notez que cela BinaryData doit avoir une longueur définie et doit être relectable si les nouvelles tentatives sont activées (la valeur par défaut), consultez BinaryData#isReplayable().
overwrite - S’il faut remplacer, des données doivent-elles exister sur l’objet blob.

Retours:

Informations de l’objet blob de blocs chargé.

upload

public BlockBlobItem upload(InputStream data, long length)

Crée un objet blob de blocs. Par défaut, cette méthode ne remplace pas un objet blob existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Ceci afin de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’utiliser getBlobOutputStream() et d’écrire dans le OutputStream retourné. Vous pouvez également envisager d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans .InputStream

Retours:

Informations de l’objet blob de blocs chargé.

upload

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Ceci afin de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’utiliser getBlobOutputStream() et d’écrire dans le OutputStream retourné. Vous pouvez également envisager d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans .InputStream
overwrite - S’il faut remplacer, des données doivent-elles exister sur l’objet blob.

Retours:

Informations de l’objet blob de blocs chargé.

uploadFromUrl

public BlockBlobItem uploadFromUrl(String sourceUrl)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlobFromUrl ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

sourceUrl - URL source à partir de laquelle charger.

Retours:

Informations de l’objet blob de blocs chargé.

uploadFromUrl

public BlockBlobItem uploadFromUrl(String sourceUrl, boolean overwrite)

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlobFromUrl ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour plus d’informations, consultez Azure Docs.

Exemples de code

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

Paramètres:

sourceUrl - URL source à partir de laquelle charger.
overwrite - S’il faut remplacer, des données doivent-elles exister sur l’objet blob.

Retours:

Informations de l’objet blob de blocs chargé.

uploadFromUrlWithResponse

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant.

La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlobFromUrl ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour plus d’informations, consultez Azure Docs.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

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()));

Paramètres:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Informations de l’objet blob de blocs chargé.

uploadWithResponse

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

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()));

Paramètres:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Informations de l’objet blob de blocs chargé.

uploadWithResponse

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

Crée un objet blob de blocs ou met à jour le contenu d’un objet blob de blocs existant. La mise à jour d'un objet blob de blocs existant remplace toutes les métadonnées existantes de l'objet blob. Les mises à jour partielles ne sont pas prises en charge avec PutBlob ; le contenu de l’objet blob existant est remplacé par le nouveau contenu. Pour effectuer une mise à jour partielle d’un objet blob de blocs, utilisez PutBlock et PutBlockList. Pour plus d’informations, consultez Azure Docs.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

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()));

Paramètres:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’utiliser getBlobOutputStream() et d’écrire dans le OutputStream retourné. Vous pouvez également inclure votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans le InputStream.
headers - BlobHttpHeaders
metadata - Métadonnées à associer à l’objet blob. S’il existe un espace blanc de début ou de fin dans une clé ou une valeur de métadonnées, il doit être supprimé ou encodé.
tier - AccessTier pour l’objet blob de destination.
contentMd5 - Un hachage MD5 du contenu du bloc. Ce hachage est utilisé pour vérifier l'intégrité du bloc pendant le transport. Lorsque cet en-tête est spécifié, le service de stockage compare le hachage du contenu qui est arrivé à cette valeur d'en-tête. Notez que ce hachage MD5 n'est pas stocké avec l'objet blob. Si les deux hachages ne correspondent pas, l’opération échoue.
requestConditions - BlobRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Retours:

Informations de l’objet blob de blocs chargé.

S’applique à