com.azure.storage.blob.options.AppendBlobCreateOptions Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-storage-blob Show documentation
Show all versions of azure-storage-blob Show documentation
This module contains client library for Microsoft Azure Blob Storage.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.storage.blob.options;
import com.azure.core.annotation.Fluent;
import com.azure.storage.blob.models.BlobHttpHeaders;
import com.azure.storage.blob.models.BlobImmutabilityPolicy;
import com.azure.storage.blob.models.BlobRequestConditions;
import java.util.Map;
/**
* Extended options that may be passed when creating an Append Blob.
*/
@Fluent
public class AppendBlobCreateOptions {
private BlobHttpHeaders headers;
private Map metadata;
private Map tags;
private BlobRequestConditions requestConditions;
private BlobImmutabilityPolicy immutabilityPolicy;
private Boolean legalHold;
/**
* @return {@link BlobHttpHeaders}
*/
public BlobHttpHeaders getHeaders() {
return headers;
}
/**
* @param headers {@link BlobHttpHeaders}
* @return The updated {@code AppendBlobCreateOptions}
*/
public AppendBlobCreateOptions setHeaders(BlobHttpHeaders headers) {
this.headers = headers;
return this;
}
/**
* @return The metadata to associate with the blob.
*/
public Map getMetadata() {
return metadata;
}
/**
* @param metadata The metadata to associate with the blob.
* @return The updated options
*/
public AppendBlobCreateOptions setMetadata(Map metadata) {
this.metadata = metadata;
return this;
}
/**
* @return The tags to associate with the blob.
*/
public Map getTags() {
return tags;
}
/**
* @param tags The tags to associate with the blob.
* @return The updated options.
*/
public AppendBlobCreateOptions setTags(Map tags) {
this.tags = tags;
return this;
}
/**
* @return {@link BlobRequestConditions}
*/
public BlobRequestConditions getRequestConditions() {
return requestConditions;
}
/**
* @param requestConditions {@link BlobRequestConditions}
* @return The updated options.
*/
public AppendBlobCreateOptions setRequestConditions(BlobRequestConditions requestConditions) {
this.requestConditions = requestConditions;
return this;
}
/**
* @return {@link BlobImmutabilityPolicy}
*/
public BlobImmutabilityPolicy getImmutabilityPolicy() {
return immutabilityPolicy;
}
/**
* Note that this parameter is only applicable to a blob within a container that has immutable storage with
* versioning enabled.
* @param immutabilityPolicy {@link BlobImmutabilityPolicy}
* @return The updated options.
*/
public AppendBlobCreateOptions setImmutabilityPolicy(BlobImmutabilityPolicy immutabilityPolicy) {
this.immutabilityPolicy = immutabilityPolicy;
return this;
}
/**
* @return If a legal hold should be placed on the blob.
*/
public Boolean hasLegalHold() {
return legalHold;
}
/**
* Note that this parameter is only applicable to a blob within a container that has immutable storage with
* versioning enabled.
* @param legalHold Indicates if a legal hold should be placed on the blob.
* @return The updated options.
*/
public AppendBlobCreateOptions setLegalHold(Boolean legalHold) {
this.legalHold = legalHold;
return this;
}
}