/// <summary>
 /// Initializes a new instance of the StorageAccountInner class.
 /// </summary>
 /// <param name="location">The geo-location where the resource
 /// lives</param>
 /// <param name="id">Fully qualified resource Id for the resource. Ex -
 /// /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}</param>
 /// <param name="name">The name of the resource</param>
 /// <param name="type">The type of the resource. Ex-
 /// Microsoft.Compute/virtualMachines or
 /// Microsoft.Storage/storageAccounts.</param>
 /// <param name="tags">Resource tags.</param>
 /// <param name="sku">Gets the SKU.</param>
 /// <param name="kind">Gets the Kind. Possible values include:
 /// 'Storage', 'StorageV2', 'BlobStorage', 'FileStorage',
 /// 'BlockBlobStorage'</param>
 /// <param name="identity">The identity of the resource.</param>
 /// <param name="provisioningState">Gets the status of the storage
 /// account at the time the operation was called. Possible values
 /// include: 'Creating', 'ResolvingDNS', 'Succeeded'</param>
 /// <param name="primaryEndpoints">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.</param>
 /// <param name="primaryLocation">Gets the location of the primary data
 /// center for the storage account.</param>
 /// <param name="statusOfPrimary">Gets the status indicating whether
 /// the primary location of the storage account is available or
 /// unavailable. Possible values include: 'available',
 /// 'unavailable'</param>
 /// <param name="lastGeoFailoverTime">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.</param>
 /// <param name="secondaryLocation">Gets the location of the
 /// geo-replicated secondary for the storage account. Only available if
 /// the accountType is Standard_GRS or Standard_RAGRS.</param>
 /// <param name="statusOfSecondary">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'</param>
 /// <param name="creationTime">Gets the creation date and time of the
 /// storage account in UTC.</param>
 /// <param name="customDomain">Gets the custom domain the user assigned
 /// to this storage account.</param>
 /// <param name="secondaryEndpoints">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.</param>
 /// <param name="encryption">Gets the encryption settings on the
 /// account. If unspecified, the account is unencrypted.</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 /// <param name="enableAzureFilesAadIntegration">Enables Azure Files
 /// AAD Integration for SMB if sets to true.</param>
 /// <param name="enableHttpsTrafficOnly">Allows https traffic only to
 /// storage service if sets to true.</param>
 /// <param name="networkRuleSet">Network rule set</param>
 /// <param name="isHnsEnabled">Account HierarchicalNamespace enabled if
 /// sets to true.</param>
 /// <param name="geoReplicationStats">Geo Replication Stats</param>
 /// <param name="failoverInProgress">If the failover is in progress,
 /// the value will be true, otherwise, it will be null.</param>
 public StorageAccountInner(string location, string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), Sku sku = default(Sku), Kind?kind = default(Kind?), Identity identity = default(Identity), ProvisioningState?provisioningState = default(ProvisioningState?), Endpoints primaryEndpoints = default(Endpoints), string primaryLocation = default(string), AccountStatus?statusOfPrimary = default(AccountStatus?), System.DateTime?lastGeoFailoverTime = default(System.DateTime?), string secondaryLocation = default(string), AccountStatus?statusOfSecondary = default(AccountStatus?), System.DateTime?creationTime = default(System.DateTime?), CustomDomain customDomain = default(CustomDomain), Endpoints secondaryEndpoints = default(Endpoints), Encryption encryption = default(Encryption), AccessTier?accessTier = default(AccessTier?), bool?enableAzureFilesAadIntegration = default(bool?), bool?enableHttpsTrafficOnly = default(bool?), NetworkRuleSet networkRuleSet = default(NetworkRuleSet), bool?isHnsEnabled = default(bool?), GeoReplicationStats geoReplicationStats = default(GeoReplicationStats), bool?failoverInProgress = default(bool?))
     : base(location, id, name, type, tags)
 {
     Sku                            = sku;
     Kind                           = kind;
     Identity                       = identity;
     ProvisioningState              = provisioningState;
     PrimaryEndpoints               = primaryEndpoints;
     PrimaryLocation                = primaryLocation;
     StatusOfPrimary                = statusOfPrimary;
     LastGeoFailoverTime            = lastGeoFailoverTime;
     SecondaryLocation              = secondaryLocation;
     StatusOfSecondary              = statusOfSecondary;
     CreationTime                   = creationTime;
     CustomDomain                   = customDomain;
     SecondaryEndpoints             = secondaryEndpoints;
     Encryption                     = encryption;
     AccessTier                     = accessTier;
     EnableAzureFilesAadIntegration = enableAzureFilesAadIntegration;
     EnableHttpsTrafficOnly         = enableHttpsTrafficOnly;
     NetworkRuleSet                 = networkRuleSet;
     IsHnsEnabled                   = isHnsEnabled;
     GeoReplicationStats            = geoReplicationStats;
     FailoverInProgress             = failoverInProgress;
     CustomInit();
 }
예제 #2
0
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (Sku == null)
     {
         throw new ValidationException(ValidationRules.CannotBeNull, "Sku");
     }
     if (Location == null)
     {
         throw new ValidationException(ValidationRules.CannotBeNull, "Location");
     }
     if (Sku != null)
     {
         Sku.Validate();
     }
     if (CustomDomain != null)
     {
         CustomDomain.Validate();
     }
     if (Encryption != null)
     {
         Encryption.Validate();
     }
     if (NetworkRuleSet != null)
     {
         NetworkRuleSet.Validate();
     }
 }
 /// <summary>
 /// Initializes a new instance of the
 /// StorageAccountUpdateParametersInner class.
 /// </summary>
 /// <param name="sku">Gets or sets the SKU name. Note that the SKU name
 /// cannot be updated to Standard_ZRS or Premium_LRS, nor can accounts
 /// of those sku names be updated to any other value.</param>
 /// <param name="tags">Gets or sets a list of key value pairs that
 /// describe the resource. These tags can be used in viewing and
 /// grouping this resource (across resource groups). A maximum of 15
 /// tags can be provided for a resource. Each tag must have a key no
 /// greater in length than 128 characters and a value no greater in
 /// length than 256 characters.</param>
 /// <param name="customDomain">Custom domain assigned to the storage
 /// account by the user. Name is the CNAME source. Only one custom
 /// domain is supported per storage account at this time. To clear the
 /// existing custom domain, use an empty string for the custom domain
 /// name property.</param>
 /// <param name="encryption">Provides the encryption settings on the
 /// account. The default setting is unencrypted.</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 public StorageAccountUpdateParametersInner(Sku sku = default(Sku), IDictionary <string, string> tags = default(IDictionary <string, string>), CustomDomain customDomain = default(CustomDomain), Encryption encryption = default(Encryption), AccessTier?accessTier = default(AccessTier?))
 {
     Sku          = sku;
     Tags         = tags;
     CustomDomain = customDomain;
     Encryption   = encryption;
     AccessTier   = accessTier;
     CustomInit();
 }
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (Sku != null)
     {
         Sku.Validate();
     }
     if (CustomDomain != null)
     {
         CustomDomain.Validate();
     }
 }
예제 #5
0
 /// <summary>
 /// Initializes a new instance of the
 /// StorageAccountCreateParametersInner class.
 /// </summary>
 /// <param name="sku">Required. Gets or sets the sku name.</param>
 /// <param name="kind">Required. Indicates the type of storage account.
 /// Possible values include: 'Storage', 'BlobStorage'</param>
 /// <param name="location">Required. Gets or sets the location of the
 /// resource. This will be one of the supported and registered Azure
 /// Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo
 /// region of a resource cannot be changed once it is created, but if
 /// an identical geo region is specified on update, the request will
 /// succeed.</param>
 /// <param name="tags">Gets or sets a list of key value pairs that
 /// describe the resource. These tags can be used for viewing and
 /// grouping this resource (across resource groups). A maximum of 15
 /// tags can be provided for a resource. Each tag must have a key with
 /// a length no greater than 128 characters and a value with a length
 /// no greater than 256 characters.</param>
 /// <param name="customDomain">User domain assigned to the storage
 /// account. Name is the CNAME source. Only one custom domain is
 /// supported per storage account at this time. To clear the existing
 /// custom domain, use an empty string for the custom domain name
 /// property.</param>
 /// <param name="encryption">Provides the encryption settings on the
 /// account. If left unspecified the account encryption settings will
 /// remain the same. The default setting is unencrypted.</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 public StorageAccountCreateParametersInner(Sku sku, Kind kind, string location, IDictionary <string, string> tags = default(IDictionary <string, string>), CustomDomain customDomain = default(CustomDomain), Encryption encryption = default(Encryption), AccessTier?accessTier = default(AccessTier?))
 {
     Sku          = sku;
     Kind         = kind;
     Location     = location;
     Tags         = tags;
     CustomDomain = customDomain;
     Encryption   = encryption;
     AccessTier   = accessTier;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the
 /// StorageAccountUpdateParametersInner class.
 /// </summary>
 /// <param name="sku">Gets or sets the SKU name. Note that the SKU name
 /// cannot be updated to Standard_ZRS or Premium_LRS, nor can accounts
 /// of those sku names be updated to any other value.</param>
 /// <param name="tags">Gets or sets a list of key value pairs that
 /// describe the resource. These tags can be used in viewing and
 /// grouping this resource (across resource groups). A maximum of 15
 /// tags can be provided for a resource. Each tag must have a key no
 /// greater in length than 128 characters and a value no greater in
 /// length than 256 characters.</param>
 /// <param name="identity">The identity of the resource.</param>
 /// <param name="customDomain">Custom domain assigned to the storage
 /// account by the user. Name is the CNAME source. Only one custom
 /// domain is supported per storage account at this time. To clear the
 /// existing custom domain, use an empty string for the custom domain
 /// name property.</param>
 /// <param name="encryption">Provides the encryption settings on the
 /// account. The default setting is unencrypted.</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 /// <param name="enableHttpsTrafficOnly">Allows https traffic only to
 /// storage service if sets to true.</param>
 /// <param name="networkRuleSet">Network rule set</param>
 /// <param name="kind">Optional. Indicates the type of storage account.
 /// Currently only StorageV2 value supported by server. Possible values
 /// include: 'Storage', 'StorageV2', 'BlobStorage'</param>
 public StorageAccountUpdateParametersInner(SkuInner sku = default(SkuInner), IDictionary <string, string> tags = default(IDictionary <string, string>), Identity identity = default(Identity), CustomDomain customDomain = default(CustomDomain), Encryption encryption = default(Encryption), AccessTier?accessTier = default(AccessTier?), bool?enableHttpsTrafficOnly = default(bool?), NetworkRuleSet networkRuleSet = default(NetworkRuleSet), Kind?kind = default(Kind?))
 {
     Sku                    = sku;
     Tags                   = tags;
     Identity               = identity;
     CustomDomain           = customDomain;
     Encryption             = encryption;
     AccessTier             = accessTier;
     EnableHttpsTrafficOnly = enableHttpsTrafficOnly;
     NetworkRuleSet         = networkRuleSet;
     Kind                   = kind;
     CustomInit();
 }
예제 #7
0
 /// <summary>
 /// Initializes a new instance of the
 /// StorageAccountCreateParametersInner class.
 /// </summary>
 /// <param name="sku">Required. Gets or sets the SKU name.</param>
 /// <param name="kind">Required. Indicates the type of storage account.
 /// Possible values include: 'Storage', 'StorageV2', 'BlobStorage',
 /// 'FileStorage', 'BlockBlobStorage'</param>
 /// <param name="location">Required. Gets or sets the location of the
 /// resource. This will be one of the supported and registered Azure
 /// Geo Regions (e.g. West US, East US, Southeast Asia, etc.). The geo
 /// region of a resource cannot be changed once it is created, but if
 /// an identical geo region is specified on update, the request will
 /// succeed.</param>
 /// <param name="tags">Gets or sets a list of key value pairs that
 /// describe the resource. These tags can be used for viewing and
 /// grouping this resource (across resource groups). A maximum of 15
 /// tags can be provided for a resource. Each tag must have a key with
 /// a length no greater than 128 characters and a value with a length
 /// no greater than 256 characters.</param>
 /// <param name="identity">The identity of the resource.</param>
 /// <param name="customDomain">User domain assigned to the storage
 /// account. Name is the CNAME source. Only one custom domain is
 /// supported per storage account at this time. To clear the existing
 /// custom domain, use an empty string for the custom domain name
 /// property.</param>
 /// <param name="encryption">Provides the encryption settings on the
 /// account. If left unspecified the account encryption settings will
 /// remain the same. The default setting is unencrypted.</param>
 /// <param name="networkRuleSet">Network rule set</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 /// <param name="enableAzureFilesAadIntegration">Enables Azure Files
 /// AAD Integration for SMB if sets to true.</param>
 /// <param name="enableHttpsTrafficOnly">Allows https traffic only to
 /// storage service if sets to true.</param>
 /// <param name="isHnsEnabled">Account HierarchicalNamespace enabled if
 /// sets to true.</param>
 public StorageAccountCreateParametersInner(Sku sku, Kind kind, string location, IDictionary <string, string> tags = default(IDictionary <string, string>), Identity identity = default(Identity), CustomDomain customDomain = default(CustomDomain), Encryption encryption = default(Encryption), NetworkRuleSet networkRuleSet = default(NetworkRuleSet), AccessTier?accessTier = default(AccessTier?), bool?enableAzureFilesAadIntegration = default(bool?), bool?enableHttpsTrafficOnly = default(bool?), bool?isHnsEnabled = default(bool?))
 {
     Sku            = sku;
     Kind           = kind;
     Location       = location;
     Tags           = tags;
     Identity       = identity;
     CustomDomain   = customDomain;
     Encryption     = encryption;
     NetworkRuleSet = networkRuleSet;
     AccessTier     = accessTier;
     EnableAzureFilesAadIntegration = enableAzureFilesAadIntegration;
     EnableHttpsTrafficOnly         = enableHttpsTrafficOnly;
     IsHnsEnabled = isHnsEnabled;
     CustomInit();
 }
예제 #8
0
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public virtual void Validate()
 {
     if (Sku != null)
     {
         Sku.Validate();
     }
     if (CustomDomain != null)
     {
         CustomDomain.Validate();
     }
     if (Encryption != null)
     {
         Encryption.Validate();
     }
     if (NetworkRuleSet != null)
     {
         NetworkRuleSet.Validate();
     }
 }
 /// <summary>
 /// Initializes a new instance of the StorageAccountInner class.
 /// </summary>
 /// <param name="sku">Gets the SKU.</param>
 /// <param name="kind">Gets the Kind. Possible values include:
 /// 'Storage', 'BlobStorage'</param>
 /// <param name="provisioningState">Gets the status of the storage
 /// account at the time the operation was called. Possible values
 /// include: 'Creating', 'ResolvingDNS', 'Succeeded'</param>
 /// <param name="primaryEndpoints">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.</param>
 /// <param name="primaryLocation">Gets the location of the primary data
 /// center for the storage account.</param>
 /// <param name="statusOfPrimary">Gets the status indicating whether
 /// the primary location of the storage account is available or
 /// unavailable. Possible values include: 'Available',
 /// 'Unavailable'</param>
 /// <param name="lastGeoFailoverTime">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.</param>
 /// <param name="secondaryLocation">Gets the location of the
 /// geo-replicated secondary for the storage account. Only available if
 /// the accountType is Standard_GRS or Standard_RAGRS.</param>
 /// <param name="statusOfSecondary">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'</param>
 /// <param name="creationTime">Gets the creation date and time of the
 /// storage account in UTC.</param>
 /// <param name="customDomain">Gets the custom domain the user assigned
 /// to this storage account.</param>
 /// <param name="secondaryEndpoints">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.</param>
 /// <param name="encryption">Gets the encryption settings on the
 /// account. If unspecified, the account is unencrypted.</param>
 /// <param name="accessTier">Required for storage accounts where kind =
 /// BlobStorage. The access tier used for billing. Possible values
 /// include: 'Hot', 'Cool'</param>
 public StorageAccountInner(string location = default(string), string id = default(string), string name = default(string), string type = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), Sku sku = default(Sku), Kind?kind = default(Kind?), ProvisioningState?provisioningState = default(ProvisioningState?), Endpoints primaryEndpoints = default(Endpoints), string primaryLocation = default(string), AccountStatus?statusOfPrimary = default(AccountStatus?), System.DateTime?lastGeoFailoverTime = default(System.DateTime?), string secondaryLocation = default(string), AccountStatus?statusOfSecondary = default(AccountStatus?), System.DateTime?creationTime = default(System.DateTime?), CustomDomain customDomain = default(CustomDomain), Endpoints secondaryEndpoints = default(Endpoints), Encryption encryption = default(Encryption), AccessTier?accessTier = default(AccessTier?))
     : base(location, id, name, type, tags)
 {
     Sku  = sku;
     Kind = kind;
     ProvisioningState   = provisioningState;
     PrimaryEndpoints    = primaryEndpoints;
     PrimaryLocation     = primaryLocation;
     StatusOfPrimary     = statusOfPrimary;
     LastGeoFailoverTime = lastGeoFailoverTime;
     SecondaryLocation   = secondaryLocation;
     StatusOfSecondary   = statusOfSecondary;
     CreationTime        = creationTime;
     CustomDomain        = customDomain;
     SecondaryEndpoints  = secondaryEndpoints;
     Encryption          = encryption;
     AccessTier          = accessTier;
     CustomInit();
 }
 /// <summary>
 /// Validate the object.
 /// </summary>
 /// <exception cref="ValidationException">
 /// Thrown if validation fails
 /// </exception>
 public override void Validate()
 {
     base.Validate();
     if (Sku != null)
     {
         Sku.Validate();
     }
     if (CustomDomain != null)
     {
         CustomDomain.Validate();
     }
     if (Encryption != null)
     {
         Encryption.Validate();
     }
     if (NetworkRuleSet != null)
     {
         NetworkRuleSet.Validate();
     }
 }