AppendBlobClient Classe
- java.
lang. Object - com.
azure. storage. blob. specialized. BlobClientBase - com.
azure. storage. blob. specialized. AppendBlobClient
- com.
- com.
public final class AppendBlobClient
extends BlobClientBase
Client vers un objet blob d’ajout. Il peut uniquement être instancié via un SpecializedBlobClientBuilder ou via la méthode getAppendBlobClient(). 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.
Ce client contient des opérations sur un objet blob. Les opérations sur un conteneur sont disponibles sur BlobContainerClient, et les opérations sur le service sont disponibles sur BlobServiceClient.
Pour plus d’informations, consultez Azure Docs .
Récapitulatif du champ
Modificateur et type | Champ et description |
---|---|
static final int |
MAX_APPEND_BLOCK_BYTES
Déprécié
utilisez getMaxAppendBlockBytes().
Indique le nombre maximal d’octets pouvant être envoyés dans un appel pour ajouter |
static final int |
MAX_BLOCKS
Déprécié
utilisez getMaxBlocks().
Indique le nombre maximal de blocs autorisés dans un objet blob d’ajout. |
Résumé de la méthode
Méthodes héritées de BlobClientBase
Méthodes héritées de java.lang.Object
Détails du champ
MAX_APPEND_BLOCK_BYTES
@Deprecated
public static final int MAX_APPEND_BLOCK_BYTES
Déprécié
Indique le nombre maximal d’octets pouvant être envoyés dans un appel à appendBlock.
MAX_BLOCKS
@Deprecated
public static final int MAX_BLOCKS
Déprécié
Indique le nombre maximal de blocs autorisés dans un objet blob d’ajout.
Détails de la méthode
appendBlock
public AppendBlobItem appendBlock(InputStream data, long length)
Valide un nouveau bloc de données à la fin de l’objet blob d’ajout existant.
Notez que les données passées doivent être relues si les nouvelles tentatives sont activées (valeur par défaut). En d’autres termes, le Flux
doit produire les mêmes données chaque fois qu’il est abonné. Pour les versions de service 2022-11-02 et ultérieures, la taille de bloc maximale est de 100 Mo. Pour les versions précédentes, la taille maximale du bloc est de 4 Mo. Pour plus d’informations, consultez Azure Docs.
Exemples de code
System.out.printf("AppendBlob has %d committed blocks%n",
client.appendBlock(data, length).getBlobCommittedBlockCount());
Paramètres:
Flux
Retours:
appendBlockFromUrl
public AppendBlobItem appendBlockFromUrl(String sourceUrl, BlobRange sourceRange)
Valide un nouveau bloc de données d’un autre objet blob à la fin de cet objet blob d’ajout.
Exemples de code
System.out.printf("AppendBlob has %d committed blocks%n",
client.appendBlockFromUrl(sourceUrl, new BlobRange(offset, count)).getBlobCommittedBlockCount());
Paramètres:
Retours:
appendBlockFromUrlWithResponse
public Response
Valide un nouveau bloc de données d’un autre objet blob à la fin de cet objet blob d’ajout.
Exemples de code
AppendBlobRequestConditions appendBlobRequestConditions = new AppendBlobRequestConditions()
.setAppendPosition(POSITION)
.setMaxSize(maxSize);
BlobRequestConditions modifiedRequestConditions = new BlobRequestConditions()
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Context context = new Context("key", "value");
System.out.printf("AppendBlob has %d committed blocks%n",
client.appendBlockFromUrlWithResponse(new AppendBlobAppendBlockFromUrlOptions(sourceUrl)
.setSourceRange(new BlobRange(offset, count))
.setDestinationRequestConditions(appendBlobRequestConditions)
.setSourceRequestConditions(modifiedRequestConditions), timeout,
context).getValue().getBlobCommittedBlockCount());
Paramètres:
Retours:
appendBlockFromUrlWithResponse
public Response
Valide un nouveau bloc de données d’un autre objet blob à la fin de cet objet blob d’ajout.
Exemples de code
AppendBlobRequestConditions appendBlobRequestConditions = new AppendBlobRequestConditions()
.setAppendPosition(POSITION)
.setMaxSize(maxSize);
BlobRequestConditions modifiedRequestConditions = new BlobRequestConditions()
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Context context = new Context("key", "value");
System.out.printf("AppendBlob has %d committed blocks%n",
client.appendBlockFromUrlWithResponse(sourceUrl, new BlobRange(offset, count), null,
appendBlobRequestConditions, modifiedRequestConditions, timeout,
context).getValue().getBlobCommittedBlockCount());
Paramètres:
Retours:
appendBlockWithResponse
public Response
Valide un nouveau bloc de données à la fin de l’objet blob d’ajout existant.
Notez que les données passées doivent être relues si les nouvelles tentatives sont activées (valeur par défaut). En d’autres termes, le Flux
doit produire les mêmes données chaque fois qu’il est abonné. Pour les versions de service 2022-11-02 et ultérieures, la taille de bloc maximale est de 100 Mo. Pour les versions précédentes, la taille maximale du bloc est de 4 Mo. Pour plus d’informations, consultez Azure Docs.
Exemples de code
byte[] md5 = MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8));
AppendBlobRequestConditions requestConditions = new AppendBlobRequestConditions()
.setAppendPosition(POSITION)
.setMaxSize(maxSize);
Context context = new Context("key", "value");
System.out.printf("AppendBlob has %d committed blocks%n",
client.appendBlockWithResponse(data, length, md5, requestConditions, timeout, context)
.getValue().getBlobCommittedBlockCount());
Paramètres:
Flux
Retours:
create
public AppendBlobItem create()
Crée un objet blob d’ajout de longueur 0. Appelez appendBlock pour ajouter des données à un objet blob d’ajout. Par défaut, cette méthode ne remplace pas un objet blob existant.
Exemples de code
System.out.printf("Created AppendBlob at %s%n", client.create().getLastModified());
Retours:
create
public AppendBlobItem create(boolean overwrite)
Crée un objet blob d’ajout de longueur 0. Appelez appendBlock pour ajouter des données à un objet blob d’ajout.
Exemples de code
boolean overwrite = false; // Default value
System.out.printf("Created AppendBlob at %s%n", client.create(overwrite).getLastModified());
Paramètres:
Retours:
createIfNotExists
public AppendBlobItem createIfNotExists()
Crée un objet blob d’ajout de longueur 0 s’il n’existe pas. Appelez appendBlock pour ajouter des données à un objet blob d’ajout.
Exemples de code
client.createIfNotExists();
System.out.println("Created AppendBlob");
Retours:
createIfNotExistsWithResponse
public Response
Crée un objet blob d’ajout de longueur 0 s’il n’existe pas. Appelez appendBlock pour ajouter des données à un objet blob d’ajout.
Exemples de code
BlobHttpHeaders headers = new BlobHttpHeaders()
.setContentType("binary")
.setContentLanguage("en-US");
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
Map<String, String> tags = Collections.singletonMap("tags", "value");
Context context = new Context("key", "value");
Response<AppendBlobItem> response = client.createIfNotExistsWithResponse(new AppendBlobCreateOptions()
.setHeaders(headers).setMetadata(metadata).setTags(tags), timeout, context);
if (response.getStatusCode() == 409) {
System.out.println("Already existed.");
} else {
System.out.printf("Create completed with status %d%n", response.getStatusCode());
}
Paramètres:
Retours:
createWithResponse
public Response
Crée un objet blob d’ajout de longueur 0. Appelez appendBlock pour ajouter des données à un objet blob d’ajout.
Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).
Exemples de code
BlobHttpHeaders headers = new BlobHttpHeaders()
.setContentType("binary")
.setContentLanguage("en-US");
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("Created AppendBlob at %s%n",
client.createWithResponse(headers, metadata, requestConditions, timeout, context).getValue()
.getLastModified());
Paramètres:
Retours:
createWithResponse
public Response
Crée un objet blob d’ajout de longueur 0. Appelez appendBlock pour ajouter des données à un objet blob d’ajout.
Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).
Exemples de code
BlobHttpHeaders headers = new BlobHttpHeaders()
.setContentType("binary")
.setContentLanguage("en-US");
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
Map<String, String> tags = Collections.singletonMap("tags", "value");
BlobRequestConditions requestConditions = new BlobRequestConditions()
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Context context = new Context("key", "value");
System.out.printf("Created AppendBlob at %s%n",
client.createWithResponse(new AppendBlobCreateOptions().setHeaders(headers).setMetadata(metadata)
.setTags(tags).setRequestConditions(requestConditions), timeout, context).getValue()
.getLastModified());
Paramètres:
Retours:
getBlobOutputStream
public BlobOutputStream getBlobOutputStream()
Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob d’ajout. Si l’objet blob existe déjà sur le service, de nouvelles données sont ajoutées à l’objet blob existant.
Retours:
getBlobOutputStream
public BlobOutputStream getBlobOutputStream(boolean overwrite)
Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob d’ajout. Si le remplacement est spécifié true
, l’objet blob existant est supprimé et recréé si des données existent sur l’objet blob. Si le remplacement est spécifié false
, les nouvelles données sont ajoutées à l’objet blob existant.
Paramètres:
Retours:
getBlobOutputStream
public BlobOutputStream getBlobOutputStream(AppendBlobRequestConditions requestConditions)
Crée et ouvre un flux de sortie pour écrire des données dans l’objet blob d’ajout.
Paramètres:
Retours:
getCustomerProvidedKeyClient
public AppendBlobClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)
Crée un nouveau AppendBlobClient avec le customerProvidedKey
spécifié.
Remplacements:
AppendBlobClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)Paramètres:
null
pour utiliser aucune clé fournie par le CustomerProvidedKey client.
Retours:
customerProvidedKey
.getEncryptionScopeClient
public AppendBlobClient getEncryptionScopeClient(String encryptionScope)
Crée un nouveau AppendBlobClient avec le encryptionScope
spécifié.
Remplacements:
AppendBlobClient.getEncryptionScopeClient(String encryptionScope)Paramètres:
null
pour utiliser aucune étendue de chiffrement.
Retours:
encryptionScope
.getMaxAppendBlockBytes
public int getMaxAppendBlockBytes()
Obtenez le nombre maximal d’octets de bloc d’ajout en fonction de la version de service utilisée. Les versions de service 2022-11-02 et ultérieures prennent en charge le chargement d’octets de bloc jusqu’à 100 Mo, toutes les versions de service antérieures prennent en charge jusqu’à 4 Mo.
Retours:
getMaxBlocks
public int getMaxBlocks()
Obtenez le nombre maximal de blocs autorisés dans un objet blob d’ajout.
Retours:
seal
public void seal()
Scelle un objet blob d’ajout, ce qui le rend en lecture seule. Les ajouts suivants échouent.
Exemples de code
client.seal();
System.out.println("Sealed AppendBlob");
sealWithResponse
public Response
Scelle un objet blob d’ajout, ce qui le rend en lecture seule. Les ajouts suivants échouent.
Exemples de code
AppendBlobRequestConditions requestConditions = new AppendBlobRequestConditions().setLeaseId(leaseId)
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Context context = new Context("key", "value");
client.sealWithResponse(new AppendBlobSealOptions().setRequestConditions(requestConditions), timeout, context);
System.out.println("Sealed AppendBlob");
Paramètres:
Retours:
S’applique à
Azure SDK for Java