Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License. See License.txt in the project root for
license information.
Code generated by Microsoft (R) AutoRest Code Generator.
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for
* license information.
*
* Code generated by Microsoft (R) AutoRest Code Generator.
*/
package com.microsoft.azure.management.storage.implementation;
import com.microsoft.azure.management.storage.Kind;
import com.microsoft.azure.management.storage.Identity;
import com.microsoft.azure.management.storage.ProvisioningState;
import com.microsoft.azure.management.storage.Endpoints;
import com.microsoft.azure.management.storage.AccountStatus;
import org.joda.time.DateTime;
import com.microsoft.azure.management.storage.CustomDomain;
import com.microsoft.azure.management.storage.Encryption;
import com.microsoft.azure.management.storage.AccessTier;
import com.microsoft.azure.management.storage.AzureFilesIdentityBasedAuthentication;
import com.microsoft.azure.management.storage.NetworkRuleSet;
import com.microsoft.azure.management.storage.GeoReplicationStats;
import com.microsoft.azure.management.storage.LargeFileSharesState;
import java.util.List;
import com.microsoft.azure.management.storage.RoutingPreference;
import com.microsoft.azure.management.storage.MinimumTlsVersion;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.microsoft.rest.serializer.JsonFlatten;
import com.microsoft.azure.Resource;
The storage account.
/**
* The storage account.
*/
@JsonFlatten
public class StorageAccountInner extends Resource {
Gets the SKU.
/**
* Gets the SKU.
*/
@JsonProperty(value = "sku", access = JsonProperty.Access.WRITE_ONLY)
private SkuInner sku;
Gets the Kind. Possible values include: 'Storage', 'StorageV2',
'BlobStorage', 'FileStorage', 'BlockBlobStorage'.
/**
* Gets the Kind. Possible values include: 'Storage', 'StorageV2',
* 'BlobStorage', 'FileStorage', 'BlockBlobStorage'.
*/
@JsonProperty(value = "kind", access = JsonProperty.Access.WRITE_ONLY)
private Kind kind;
The identity of the resource.
/**
* The identity of the resource.
*/
@JsonProperty(value = "identity")
private Identity identity;
Gets the status of the storage account at the time the operation was
called. Possible values include: 'Creating', 'ResolvingDNS',
'Succeeded'.
/**
* Gets the status of the storage account at the time the operation was
* called. Possible values include: 'Creating', 'ResolvingDNS',
* 'Succeeded'.
*/
@JsonProperty(value = "properties.provisioningState", access = JsonProperty.Access.WRITE_ONLY)
private ProvisioningState provisioningState;
Gets the URLs that are used to perform a retrieval of a public blob,
queue, or table object. Note that Standard_ZRS and Premium_LRS accounts
only return the blob endpoint.
/**
* Gets the URLs that are used to perform a retrieval of a public blob,
* queue, or table object. Note that Standard_ZRS and Premium_LRS accounts
* only return the blob endpoint.
*/
@JsonProperty(value = "properties.primaryEndpoints", access = JsonProperty.Access.WRITE_ONLY)
private Endpoints primaryEndpoints;
Gets the location of the primary data center for the storage account.
/**
* Gets the location of the primary data center for the storage account.
*/
@JsonProperty(value = "properties.primaryLocation", access = JsonProperty.Access.WRITE_ONLY)
private String primaryLocation;
Gets the status indicating whether the primary location of the storage
account is available or unavailable. Possible values include:
'available', 'unavailable'.
/**
* Gets the status indicating whether the primary location of the storage
* account is available or unavailable. Possible values include:
* 'available', 'unavailable'.
*/
@JsonProperty(value = "properties.statusOfPrimary", access = JsonProperty.Access.WRITE_ONLY)
private AccountStatus statusOfPrimary;
Gets the timestamp of the most recent instance of a failover to the
secondary location. Only the most recent timestamp is retained. This
element is not returned if there has never been a failover instance.
Only available if the accountType is Standard_GRS or Standard_RAGRS.
/**
* Gets the timestamp of the most recent instance of a failover to the
* secondary location. Only the most recent timestamp is retained. This
* element is not returned if there has never been a failover instance.
* Only available if the accountType is Standard_GRS or Standard_RAGRS.
*/
@JsonProperty(value = "properties.lastGeoFailoverTime", access = JsonProperty.Access.WRITE_ONLY)
private DateTime lastGeoFailoverTime;
Gets the location of the geo-replicated secondary for the storage
account. Only available if the accountType is Standard_GRS or
Standard_RAGRS.
/**
* Gets the location of the geo-replicated secondary for the storage
* account. Only available if the accountType is Standard_GRS or
* Standard_RAGRS.
*/
@JsonProperty(value = "properties.secondaryLocation", access = JsonProperty.Access.WRITE_ONLY)
private String secondaryLocation;
Gets the status indicating whether the secondary location of the storage
account is available or unavailable. Only available if the SKU name is
Standard_GRS or Standard_RAGRS. Possible values include: 'available',
'unavailable'.
/**
* Gets the status indicating whether the secondary location of the storage
* account is available or unavailable. Only available if the SKU name is
* Standard_GRS or Standard_RAGRS. Possible values include: 'available',
* 'unavailable'.
*/
@JsonProperty(value = "properties.statusOfSecondary", access = JsonProperty.Access.WRITE_ONLY)
private AccountStatus statusOfSecondary;
Gets the creation date and time of the storage account in UTC.
/**
* Gets the creation date and time of the storage account in UTC.
*/
@JsonProperty(value = "properties.creationTime", access = JsonProperty.Access.WRITE_ONLY)
private DateTime creationTime;
Gets the custom domain the user assigned to this storage account.
/**
* Gets the custom domain the user assigned to this storage account.
*/
@JsonProperty(value = "properties.customDomain", access = JsonProperty.Access.WRITE_ONLY)
private CustomDomain customDomain;
Gets the URLs that are used to perform a retrieval of a public blob,
queue, or table object from the secondary location of the storage
account. Only available if the SKU name is Standard_RAGRS.
/**
* Gets the URLs that are used to perform a retrieval of a public blob,
* queue, or table object from the secondary location of the storage
* account. Only available if the SKU name is Standard_RAGRS.
*/
@JsonProperty(value = "properties.secondaryEndpoints", access = JsonProperty.Access.WRITE_ONLY)
private Endpoints secondaryEndpoints;
Gets the encryption settings on the account. If unspecified, the account
is unencrypted.
/**
* Gets the encryption settings on the account. If unspecified, the account
* is unencrypted.
*/
@JsonProperty(value = "properties.encryption", access = JsonProperty.Access.WRITE_ONLY)
private Encryption encryption;
Required for storage accounts where kind = BlobStorage. The access tier
used for billing. Possible values include: 'Hot', 'Cool'.
/**
* Required for storage accounts where kind = BlobStorage. The access tier
* used for billing. Possible values include: 'Hot', 'Cool'.
*/
@JsonProperty(value = "properties.accessTier", access = JsonProperty.Access.WRITE_ONLY)
private AccessTier accessTier;
Provides the identity based authentication settings for Azure Files.
/**
* Provides the identity based authentication settings for Azure Files.
*/
@JsonProperty(value = "properties.azureFilesIdentityBasedAuthentication")
private AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication;
Allows https traffic only to storage service if sets to true.
/**
* Allows https traffic only to storage service if sets to true.
*/
@JsonProperty(value = "properties.supportsHttpsTrafficOnly")
private Boolean enableHttpsTrafficOnly;
Network rule set.
/**
* Network rule set.
*/
@JsonProperty(value = "properties.networkAcls", access = JsonProperty.Access.WRITE_ONLY)
private NetworkRuleSet networkRuleSet;
Account HierarchicalNamespace enabled if sets to true.
/**
* Account HierarchicalNamespace enabled if sets to true.
*/
@JsonProperty(value = "properties.isHnsEnabled")
private Boolean isHnsEnabled;
Geo Replication Stats.
/**
* Geo Replication Stats.
*/
@JsonProperty(value = "properties.geoReplicationStats", access = JsonProperty.Access.WRITE_ONLY)
private GeoReplicationStats geoReplicationStats;
If the failover is in progress, the value will be true, otherwise, it
will be null.
/**
* If the failover is in progress, the value will be true, otherwise, it
* will be null.
*/
@JsonProperty(value = "properties.failoverInProgress", access = JsonProperty.Access.WRITE_ONLY)
private Boolean failoverInProgress;
Allow large file shares if sets to Enabled. It cannot be disabled once
it is enabled. Possible values include: 'Disabled', 'Enabled'.
/**
* Allow large file shares if sets to Enabled. It cannot be disabled once
* it is enabled. Possible values include: 'Disabled', 'Enabled'.
*/
@JsonProperty(value = "properties.largeFileSharesState")
private LargeFileSharesState largeFileSharesState;
List of private endpoint connection associated with the specified
storage account.
/**
* List of private endpoint connection associated with the specified
* storage account.
*/
@JsonProperty(value = "properties.privateEndpointConnections", access = JsonProperty.Access.WRITE_ONLY)
private List<PrivateEndpointConnectionInner> privateEndpointConnections;
Maintains information about the network routing choice opted by the user
for data transfer.
/**
* Maintains information about the network routing choice opted by the user
* for data transfer.
*/
@JsonProperty(value = "properties.routingPreference")
private RoutingPreference routingPreference;
Blob restore status.
/**
* Blob restore status.
*/
@JsonProperty(value = "properties.blobRestoreStatus", access = JsonProperty.Access.WRITE_ONLY)
private BlobRestoreStatusInner blobRestoreStatus;
Allow or disallow public access to all blobs or containers in the
storage account. The default interpretation is true for this property.
/**
* Allow or disallow public access to all blobs or containers in the
* storage account. The default interpretation is true for this property.
*/
@JsonProperty(value = "properties.allowBlobPublicAccess")
private Boolean allowBlobPublicAccess;
Set the minimum TLS version to be permitted on requests to storage. The
default interpretation is TLS 1.0 for this property. Possible values
include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
/**
* Set the minimum TLS version to be permitted on requests to storage. The
* default interpretation is TLS 1.0 for this property. Possible values
* include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
*/
@JsonProperty(value = "properties.minimumTlsVersion")
private MinimumTlsVersion minimumTlsVersion;
Get gets the SKU.
Returns: the sku value
/**
* Get gets the SKU.
*
* @return the sku value
*/
public SkuInner sku() {
return this.sku;
}
Get gets the Kind. Possible values include: 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage'.
Returns: the kind value
/**
* Get gets the Kind. Possible values include: 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage', 'BlockBlobStorage'.
*
* @return the kind value
*/
public Kind kind() {
return this.kind;
}
Get the identity of the resource.
Returns: the identity value
/**
* Get the identity of the resource.
*
* @return the identity value
*/
public Identity identity() {
return this.identity;
}
Set the identity of the resource.
Params: - identity – the identity value to set
Returns: the StorageAccountInner object itself.
/**
* Set the identity of the resource.
*
* @param identity the identity value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withIdentity(Identity identity) {
this.identity = identity;
return this;
}
Get gets the status of the storage account at the time the operation was called. Possible values include: 'Creating', 'ResolvingDNS', 'Succeeded'.
Returns: the provisioningState value
/**
* Get gets the status of the storage account at the time the operation was called. Possible values include: 'Creating', 'ResolvingDNS', 'Succeeded'.
*
* @return the provisioningState value
*/
public ProvisioningState provisioningState() {
return this.provisioningState;
}
Get gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that Standard_ZRS and Premium_LRS accounts only return the blob endpoint.
Returns: the primaryEndpoints value
/**
* Get gets the URLs that are used to perform a retrieval of a public blob, queue, or table object. Note that Standard_ZRS and Premium_LRS accounts only return the blob endpoint.
*
* @return the primaryEndpoints value
*/
public Endpoints primaryEndpoints() {
return this.primaryEndpoints;
}
Get gets the location of the primary data center for the storage account.
Returns: the primaryLocation value
/**
* Get gets the location of the primary data center for the storage account.
*
* @return the primaryLocation value
*/
public String primaryLocation() {
return this.primaryLocation;
}
Get gets the status indicating whether the primary location of the storage account is available or unavailable. Possible values include: 'available', 'unavailable'.
Returns: the statusOfPrimary value
/**
* Get gets the status indicating whether the primary location of the storage account is available or unavailable. Possible values include: 'available', 'unavailable'.
*
* @return the statusOfPrimary value
*/
public AccountStatus statusOfPrimary() {
return this.statusOfPrimary;
}
Get gets the timestamp of the most recent instance of a failover to the secondary location. Only the most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only available if the accountType is Standard_GRS or Standard_RAGRS.
Returns: the lastGeoFailoverTime value
/**
* Get gets the timestamp of the most recent instance of a failover to the secondary location. Only the most recent timestamp is retained. This element is not returned if there has never been a failover instance. Only available if the accountType is Standard_GRS or Standard_RAGRS.
*
* @return the lastGeoFailoverTime value
*/
public DateTime lastGeoFailoverTime() {
return this.lastGeoFailoverTime;
}
Get gets the location of the geo-replicated secondary for the storage account. Only available if the accountType is Standard_GRS or Standard_RAGRS.
Returns: the secondaryLocation value
/**
* Get gets the location of the geo-replicated secondary for the storage account. Only available if the accountType is Standard_GRS or Standard_RAGRS.
*
* @return the secondaryLocation value
*/
public String secondaryLocation() {
return this.secondaryLocation;
}
Get gets the status indicating whether the secondary location of the storage account is available or unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS. Possible values include: 'available', 'unavailable'.
Returns: the statusOfSecondary value
/**
* Get gets the status indicating whether the secondary location of the storage account is available or unavailable. Only available if the SKU name is Standard_GRS or Standard_RAGRS. Possible values include: 'available', 'unavailable'.
*
* @return the statusOfSecondary value
*/
public AccountStatus statusOfSecondary() {
return this.statusOfSecondary;
}
Get gets the creation date and time of the storage account in UTC.
Returns: the creationTime value
/**
* Get gets the creation date and time of the storage account in UTC.
*
* @return the creationTime value
*/
public DateTime creationTime() {
return this.creationTime;
}
Get gets the custom domain the user assigned to this storage account.
Returns: the customDomain value
/**
* Get gets the custom domain the user assigned to this storage account.
*
* @return the customDomain value
*/
public CustomDomain customDomain() {
return this.customDomain;
}
Get gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the secondary location of the storage account. Only available if the SKU name is Standard_RAGRS.
Returns: the secondaryEndpoints value
/**
* Get gets the URLs that are used to perform a retrieval of a public blob, queue, or table object from the secondary location of the storage account. Only available if the SKU name is Standard_RAGRS.
*
* @return the secondaryEndpoints value
*/
public Endpoints secondaryEndpoints() {
return this.secondaryEndpoints;
}
Get gets the encryption settings on the account. If unspecified, the account is unencrypted.
Returns: the encryption value
/**
* Get gets the encryption settings on the account. If unspecified, the account is unencrypted.
*
* @return the encryption value
*/
public Encryption encryption() {
return this.encryption;
}
Get required for storage accounts where kind = BlobStorage. The access tier used for billing. Possible values include: 'Hot', 'Cool'.
Returns: the accessTier value
/**
* Get required for storage accounts where kind = BlobStorage. The access tier used for billing. Possible values include: 'Hot', 'Cool'.
*
* @return the accessTier value
*/
public AccessTier accessTier() {
return this.accessTier;
}
Get provides the identity based authentication settings for Azure Files.
Returns: the azureFilesIdentityBasedAuthentication value
/**
* Get provides the identity based authentication settings for Azure Files.
*
* @return the azureFilesIdentityBasedAuthentication value
*/
public AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication() {
return this.azureFilesIdentityBasedAuthentication;
}
Set provides the identity based authentication settings for Azure Files.
Params: - azureFilesIdentityBasedAuthentication – the azureFilesIdentityBasedAuthentication value to set
Returns: the StorageAccountInner object itself.
/**
* Set provides the identity based authentication settings for Azure Files.
*
* @param azureFilesIdentityBasedAuthentication the azureFilesIdentityBasedAuthentication value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withAzureFilesIdentityBasedAuthentication(AzureFilesIdentityBasedAuthentication azureFilesIdentityBasedAuthentication) {
this.azureFilesIdentityBasedAuthentication = azureFilesIdentityBasedAuthentication;
return this;
}
Get allows https traffic only to storage service if sets to true.
Returns: the enableHttpsTrafficOnly value
/**
* Get allows https traffic only to storage service if sets to true.
*
* @return the enableHttpsTrafficOnly value
*/
public Boolean enableHttpsTrafficOnly() {
return this.enableHttpsTrafficOnly;
}
Set allows https traffic only to storage service if sets to true.
Params: - enableHttpsTrafficOnly – the enableHttpsTrafficOnly value to set
Returns: the StorageAccountInner object itself.
/**
* Set allows https traffic only to storage service if sets to true.
*
* @param enableHttpsTrafficOnly the enableHttpsTrafficOnly value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withEnableHttpsTrafficOnly(Boolean enableHttpsTrafficOnly) {
this.enableHttpsTrafficOnly = enableHttpsTrafficOnly;
return this;
}
Get network rule set.
Returns: the networkRuleSet value
/**
* Get network rule set.
*
* @return the networkRuleSet value
*/
public NetworkRuleSet networkRuleSet() {
return this.networkRuleSet;
}
Get account HierarchicalNamespace enabled if sets to true.
Returns: the isHnsEnabled value
/**
* Get account HierarchicalNamespace enabled if sets to true.
*
* @return the isHnsEnabled value
*/
public Boolean isHnsEnabled() {
return this.isHnsEnabled;
}
Set account HierarchicalNamespace enabled if sets to true.
Params: - isHnsEnabled – the isHnsEnabled value to set
Returns: the StorageAccountInner object itself.
/**
* Set account HierarchicalNamespace enabled if sets to true.
*
* @param isHnsEnabled the isHnsEnabled value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withIsHnsEnabled(Boolean isHnsEnabled) {
this.isHnsEnabled = isHnsEnabled;
return this;
}
Get geo Replication Stats.
Returns: the geoReplicationStats value
/**
* Get geo Replication Stats.
*
* @return the geoReplicationStats value
*/
public GeoReplicationStats geoReplicationStats() {
return this.geoReplicationStats;
}
Get if the failover is in progress, the value will be true, otherwise, it will be null.
Returns: the failoverInProgress value
/**
* Get if the failover is in progress, the value will be true, otherwise, it will be null.
*
* @return the failoverInProgress value
*/
public Boolean failoverInProgress() {
return this.failoverInProgress;
}
Get allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. Possible values include: 'Disabled', 'Enabled'.
Returns: the largeFileSharesState value
/**
* Get allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. Possible values include: 'Disabled', 'Enabled'.
*
* @return the largeFileSharesState value
*/
public LargeFileSharesState largeFileSharesState() {
return this.largeFileSharesState;
}
Set allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. Possible values include: 'Disabled', 'Enabled'.
Params: - largeFileSharesState – the largeFileSharesState value to set
Returns: the StorageAccountInner object itself.
/**
* Set allow large file shares if sets to Enabled. It cannot be disabled once it is enabled. Possible values include: 'Disabled', 'Enabled'.
*
* @param largeFileSharesState the largeFileSharesState value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withLargeFileSharesState(LargeFileSharesState largeFileSharesState) {
this.largeFileSharesState = largeFileSharesState;
return this;
}
Get list of private endpoint connection associated with the specified storage account.
Returns: the privateEndpointConnections value
/**
* Get list of private endpoint connection associated with the specified storage account.
*
* @return the privateEndpointConnections value
*/
public List<PrivateEndpointConnectionInner> privateEndpointConnections() {
return this.privateEndpointConnections;
}
Get maintains information about the network routing choice opted by the user for data transfer.
Returns: the routingPreference value
/**
* Get maintains information about the network routing choice opted by the user for data transfer.
*
* @return the routingPreference value
*/
public RoutingPreference routingPreference() {
return this.routingPreference;
}
Set maintains information about the network routing choice opted by the user for data transfer.
Params: - routingPreference – the routingPreference value to set
Returns: the StorageAccountInner object itself.
/**
* Set maintains information about the network routing choice opted by the user for data transfer.
*
* @param routingPreference the routingPreference value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withRoutingPreference(RoutingPreference routingPreference) {
this.routingPreference = routingPreference;
return this;
}
Get blob restore status.
Returns: the blobRestoreStatus value
/**
* Get blob restore status.
*
* @return the blobRestoreStatus value
*/
public BlobRestoreStatusInner blobRestoreStatus() {
return this.blobRestoreStatus;
}
Get allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property.
Returns: the allowBlobPublicAccess value
/**
* Get allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property.
*
* @return the allowBlobPublicAccess value
*/
public Boolean allowBlobPublicAccess() {
return this.allowBlobPublicAccess;
}
Set allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property.
Params: - allowBlobPublicAccess – the allowBlobPublicAccess value to set
Returns: the StorageAccountInner object itself.
/**
* Set allow or disallow public access to all blobs or containers in the storage account. The default interpretation is true for this property.
*
* @param allowBlobPublicAccess the allowBlobPublicAccess value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withAllowBlobPublicAccess(Boolean allowBlobPublicAccess) {
this.allowBlobPublicAccess = allowBlobPublicAccess;
return this;
}
Get set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property. Possible values include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
Returns: the minimumTlsVersion value
/**
* Get set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property. Possible values include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
*
* @return the minimumTlsVersion value
*/
public MinimumTlsVersion minimumTlsVersion() {
return this.minimumTlsVersion;
}
Set set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property. Possible values include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
Params: - minimumTlsVersion – the minimumTlsVersion value to set
Returns: the StorageAccountInner object itself.
/**
* Set set the minimum TLS version to be permitted on requests to storage. The default interpretation is TLS 1.0 for this property. Possible values include: 'TLS1_0', 'TLS1_1', 'TLS1_2'.
*
* @param minimumTlsVersion the minimumTlsVersion value to set
* @return the StorageAccountInner object itself.
*/
public StorageAccountInner withMinimumTlsVersion(MinimumTlsVersion minimumTlsVersion) {
this.minimumTlsVersion = minimumTlsVersion;
return this;
}
}