Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See License.txt in the project root for license information.
/** * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the MIT License. See License.txt in the project root for * license information. */
package com.microsoft.azure.management.storage; import com.microsoft.azure.management.apigeneration.Beta; import com.microsoft.azure.management.apigeneration.Fluent; import com.microsoft.azure.management.resources.fluentcore.arm.models.HasManager; import com.microsoft.azure.management.resources.fluentcore.model.Appliable; import com.microsoft.azure.management.resources.fluentcore.model.Creatable; import com.microsoft.azure.management.resources.fluentcore.model.HasInner; import com.microsoft.azure.management.resources.fluentcore.model.Indexable; import com.microsoft.azure.management.resources.fluentcore.model.Updatable; import com.microsoft.azure.management.storage.implementation.BlobContainerInner; import com.microsoft.azure.management.storage.implementation.StorageManager; import org.joda.time.DateTime; import java.util.Map;
Type representing BlobContainer.
/** * Type representing BlobContainer. */
@Fluent @Beta public interface BlobContainer extends HasInner<BlobContainerInner>, Indexable, Updatable<BlobContainer.Update>, HasManager<StorageManager> {
Returns:the etag value.
/** * @return the etag value. */
String etag();
Returns:the hasImmutabilityPolicy value.
/** * @return the hasImmutabilityPolicy value. */
Boolean hasImmutabilityPolicy();
Returns:the hasLegalHold value.
/** * @return the hasLegalHold value. */
Boolean hasLegalHold();
Returns:the id value.
/** * @return the id value. */
String id();
Returns:the immutabilityPolicy value.
/** * @return the immutabilityPolicy value. */
ImmutabilityPolicyProperties immutabilityPolicy();
Returns:the lastModifiedTime value.
/** * @return the lastModifiedTime value. */
DateTime lastModifiedTime();
Returns:the leaseDuration value.
/** * @return the leaseDuration value. */
LeaseDuration leaseDuration();
Returns:the leaseState value.
/** * @return the leaseState value. */
LeaseState leaseState();
Returns:the leaseStatus value.
/** * @return the leaseStatus value. */
LeaseStatus leaseStatus();
Returns:the legalHold value.
/** * @return the legalHold value. */
LegalHoldProperties legalHold();
Returns:the metadata value.
/** * @return the metadata value. */
Map<String, String> metadata();
Returns:the name value.
/** * @return the name value. */
String name();
Returns:the publicAccess value.
/** * @return the publicAccess value. */
PublicAccess publicAccess();
Returns:the type value.
/** * @return the type value. */
String type();
The entirety of the BlobContainer definition.
/** * The entirety of the BlobContainer definition. */
interface Definition extends DefinitionStages.Blank, DefinitionStages.WithBlobService, DefinitionStages.WithPublicAccess, DefinitionStages.WithMetadata, DefinitionStages.WithCreate { }
Grouping of BlobContainer definition stages.
/** * Grouping of BlobContainer definition stages. */
interface DefinitionStages {
The first stage of a BlobContainer definition.
/** * The first stage of a BlobContainer definition. */
interface Blank extends WithBlobService { }
The stage of the blobcontainer definition allowing to specify BlobService.
/** * The stage of the blobcontainer definition allowing to specify BlobService. */
interface WithBlobService {
Specifies resourceGroupName, accountName.
Params:
  • resourceGroupName – The name of the resource group within the user's subscription. The name is case insensitive
  • accountName – The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only
Returns:the next definition stage
/** * Specifies resourceGroupName, accountName. * * @param resourceGroupName The name of the resource group within the user's subscription. The name is case insensitive * @param accountName The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only * @return the next definition stage */
WithPublicAccess withExistingBlobService(String resourceGroupName, String accountName); }
The stage of the blobcontainer definition allowing to specify PublicAccess.
/** * The stage of the blobcontainer definition allowing to specify PublicAccess. */
interface WithPublicAccess {
Specifies publicAccess.
Params:
  • publicAccess – Specifies whether data in the container may be accessed publicly and the level of access. Possible values include: 'Container', 'Blob', 'None'
Returns:the next definition stage
/** * Specifies publicAccess. * * @param publicAccess Specifies whether data in the container may be accessed publicly and the level of access. Possible values include: 'Container', 'Blob', 'None' * @return the next definition stage */
WithCreate withPublicAccess(PublicAccess publicAccess); }
The stage of the blobcontainer definition allowing to specify Metadata.
/** * The stage of the blobcontainer definition allowing to specify Metadata. */
interface WithMetadata {
Specifies metadata.
Params:
  • metadata – A name-value pair to associate with the container as metadata
Returns:the next definition stage
/** * Specifies metadata. * * @param metadata A name-value pair to associate with the container as metadata * @return the next definition stage */
WithCreate withMetadata(Map<String, String> metadata);
Specifies a singluar instance of metadata.
Params:
  • name – A name to associate with the container as metadata
  • value – A value to associate with the container as metadata
Returns:the next definition stage
/** * Specifies a singluar instance of metadata. * * @param name A name to associate with the container as metadata * @param value A value to associate with the container as metadata * @return the next definition stage */
WithCreate withMetadata(String name, String value); }
The stage of the definition which contains all the minimum required inputs for the resource to be created (via Creatable<BlobContainer>.create()), but also allows for any other optional settings to be specified.
/** * The stage of the definition which contains all the minimum required inputs for * the resource to be created (via {@link WithCreate#create()}), but also allows * for any other optional settings to be specified. */
interface WithCreate extends WithMetadata, Creatable<BlobContainer> { } }
The template for a BlobContainer update operation, containing all the settings that can be modified.
/** * The template for a BlobContainer update operation, containing all the settings that can be modified. */
interface Update extends Appliable<BlobContainer>, UpdateStages.WithPublicAccess, UpdateStages.WithMetadata { }
Grouping of BlobContainer update stages.
/** * Grouping of BlobContainer update stages. */
interface UpdateStages {
The stage of the blobcontainer update allowing to specify PublicAccess.
/** * The stage of the blobcontainer update allowing to specify PublicAccess. */
interface WithPublicAccess {
Specifies publicAccess.
Params:
  • publicAccess – Specifies whether data in the container may be accessed publicly and the level of access. Possible values include: 'Container', 'Blob', 'None'
Returns:the next update stage
/** * Specifies publicAccess. * * @param publicAccess Specifies whether data in the container may be accessed publicly and the level of access. Possible values include: 'Container', 'Blob', 'None' * @return the next update stage */
Update withPublicAccess(PublicAccess publicAccess); }
The stage of the blobcontainer update allowing to specify Metadata.
/** * The stage of the blobcontainer update allowing to specify Metadata. */
interface WithMetadata {
Specifies metadata.
Params:
  • metadata – A name-value pair to associate with the container as metadata
Returns:the next update stage
/** * Specifies metadata. * * @param metadata A name-value pair to associate with the container as metadata * @return the next update stage */
Update withMetadata(Map<String, String> metadata);
Specifies a singluar instance of metadata.
Params:
  • name – A name to associate with the container as metadata
  • value – A value to associate with the container as metadata
Returns:the next definition stage
/** * Specifies a singluar instance of metadata. * * @param name A name to associate with the container as metadata * @param value A value to associate with the container as metadata * @return the next definition stage */
Update withMetadata(String name, String value); } } }