/// <summary>
 /// Initializes a new instance of the NetworkVirtualAppliance class.
 /// </summary>
 /// <param name="id">Resource ID.</param>
 /// <param name="name">Resource name.</param>
 /// <param name="type">Resource type.</param>
 /// <param name="location">Resource location.</param>
 /// <param name="tags">Resource tags.</param>
 /// <param name="bootStrapConfigurationBlob">BootStrapConfigurationBlob
 /// storage URLs.</param>
 /// <param name="virtualHub">The Virtual Hub where Network Virtual
 /// Appliance is being deployed.</param>
 /// <param name="cloudInitConfigurationBlob">CloudInitConfigurationBlob
 /// storage URLs.</param>
 /// <param name="virtualApplianceAsn">VirtualAppliance ASN.</param>
 /// <param name="virtualApplianceNics">List of Virtual Appliance
 /// Network Interfaces.</param>
 /// <param name="provisioningState">The provisioning state of the
 /// resource. Possible values include: 'Succeeded', 'Updating',
 /// 'Deleting', 'Failed'</param>
 /// <param name="identity">The service principal that has read access
 /// to cloud-init and config blob.</param>
 /// <param name="sku">Network Virtual Appliance SKU.</param>
 /// <param name="etag">A unique read-only string that changes whenever
 /// the resource is updated.</param>
 public NetworkVirtualAppliance(string id = default(string), string name = default(string), string type = default(string), string location = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), IList <string> bootStrapConfigurationBlob = default(IList <string>), SubResource virtualHub = default(SubResource), IList <string> cloudInitConfigurationBlob = default(IList <string>), long?virtualApplianceAsn = default(long?), IList <VirtualApplianceNicProperties> virtualApplianceNics = default(IList <VirtualApplianceNicProperties>), string provisioningState = default(string), ManagedServiceIdentity identity = default(ManagedServiceIdentity), VirtualApplianceSkuProperties sku = default(VirtualApplianceSkuProperties), string etag = default(string))
     : base(id, name, type, location, tags)
 {
     BootStrapConfigurationBlob = bootStrapConfigurationBlob;
     VirtualHub = virtualHub;
     CloudInitConfigurationBlob = cloudInitConfigurationBlob;
     VirtualApplianceAsn        = virtualApplianceAsn;
     VirtualApplianceNics       = virtualApplianceNics;
     ProvisioningState          = provisioningState;
     Identity = identity;
     Sku      = sku;
     Etag     = etag;
     CustomInit();
 }
 /// <summary>
 /// Initializes a new instance of the NetworkVirtualAppliance class.
 /// </summary>
 /// <param name="id">Resource ID.</param>
 /// <param name="name">Resource name.</param>
 /// <param name="type">Resource type.</param>
 /// <param name="location">Resource location.</param>
 /// <param name="tags">Resource tags.</param>
 /// <param name="nvaSku">Network Virtual Appliance SKU.</param>
 /// <param name="addressPrefix">Address Prefix.</param>
 /// <param
 /// name="bootStrapConfigurationBlobs">BootStrapConfigurationBlobs
 /// storage URLs.</param>
 /// <param name="virtualHub">The Virtual Hub where Network Virtual
 /// Appliance is being deployed.</param>
 /// <param
 /// name="cloudInitConfigurationBlobs">CloudInitConfigurationBlob
 /// storage URLs.</param>
 /// <param name="cloudInitConfiguration">CloudInitConfiguration string
 /// in plain text.</param>
 /// <param name="virtualApplianceAsn">VirtualAppliance ASN.</param>
 /// <param name="virtualApplianceNics">List of Virtual Appliance
 /// Network Interfaces.</param>
 /// <param name="virtualApplianceSites">List of references to
 /// VirtualApplianceSite.</param>
 /// <param name="inboundSecurityRules">List of references to
 /// InboundSecurityRules.</param>
 /// <param name="provisioningState">The provisioning state of the
 /// resource. Possible values include: 'Succeeded', 'Updating',
 /// 'Deleting', 'Failed'</param>
 /// <param name="identity">The service principal that has read access
 /// to cloud-init and config blob.</param>
 /// <param name="etag">A unique read-only string that changes whenever
 /// the resource is updated.</param>
 public NetworkVirtualAppliance(string id = default(string), string name = default(string), string type = default(string), string location = default(string), IDictionary <string, string> tags = default(IDictionary <string, string>), VirtualApplianceSkuProperties nvaSku = default(VirtualApplianceSkuProperties), string addressPrefix = default(string), IList <string> bootStrapConfigurationBlobs = default(IList <string>), SubResource virtualHub = default(SubResource), IList <string> cloudInitConfigurationBlobs = default(IList <string>), string cloudInitConfiguration = default(string), long?virtualApplianceAsn = default(long?), IList <VirtualApplianceNicProperties> virtualApplianceNics = default(IList <VirtualApplianceNicProperties>), IList <SubResource> virtualApplianceSites = default(IList <SubResource>), IList <SubResource> inboundSecurityRules = default(IList <SubResource>), string provisioningState = default(string), ManagedServiceIdentity identity = default(ManagedServiceIdentity), string etag = default(string))
     : base(id, name, type, location, tags)
 {
     NvaSku        = nvaSku;
     AddressPrefix = addressPrefix;
     BootStrapConfigurationBlobs = bootStrapConfigurationBlobs;
     VirtualHub = virtualHub;
     CloudInitConfigurationBlobs = cloudInitConfigurationBlobs;
     CloudInitConfiguration      = cloudInitConfiguration;
     VirtualApplianceAsn         = virtualApplianceAsn;
     VirtualApplianceNics        = virtualApplianceNics;
     VirtualApplianceSites       = virtualApplianceSites;
     InboundSecurityRules        = inboundSecurityRules;
     ProvisioningState           = provisioningState;
     Identity = identity;
     Etag     = etag;
     CustomInit();
 }