internal AzureFirewallData(string id, string name, string type, string location, IDictionary <string, string> tags, IList <string> zones, string etag, IList <AzureFirewallApplicationRuleCollection> applicationRuleCollections, IList <AzureFirewallNatRuleCollection> natRuleCollections, IList <AzureFirewallNetworkRuleCollection> networkRuleCollections, IList <AzureFirewallIPConfiguration> ipConfigurations, AzureFirewallIPConfiguration managementIpConfiguration, ProvisioningState?provisioningState, AzureFirewallThreatIntelMode?threatIntelMode, WritableSubResource virtualHub, WritableSubResource firewallPolicy, HubIPAddresses hubIPAddresses, IReadOnlyList <AzureFirewallIpGroups> ipGroups, AzureFirewallSku sku, IDictionary <string, string> additionalProperties) : base(id, name, type, location, tags) { Zones = zones; Etag = etag; ApplicationRuleCollections = applicationRuleCollections; NatRuleCollections = natRuleCollections; NetworkRuleCollections = networkRuleCollections; IpConfigurations = ipConfigurations; ManagementIpConfiguration = managementIpConfiguration; ProvisioningState = provisioningState; ThreatIntelMode = threatIntelMode; VirtualHub = virtualHub; FirewallPolicy = firewallPolicy; HubIPAddresses = hubIPAddresses; IpGroups = ipGroups; Sku = sku; AdditionalProperties = additionalProperties; }
internal static AzureFirewallData DeserializeAzureFirewallData(JsonElement element) { Optional <IList <string> > zones = default; Optional <string> etag = default; Optional <string> id = default; Optional <string> name = default; Optional <string> type = default; Optional <string> location = default; Optional <IDictionary <string, string> > tags = default; Optional <IList <AzureFirewallApplicationRuleCollection> > applicationRuleCollections = default; Optional <IList <AzureFirewallNatRuleCollection> > natRuleCollections = default; Optional <IList <AzureFirewallNetworkRuleCollection> > networkRuleCollections = default; Optional <IList <AzureFirewallIPConfiguration> > ipConfigurations = default; Optional <AzureFirewallIPConfiguration> managementIpConfiguration = default; Optional <ProvisioningState> provisioningState = default; Optional <AzureFirewallThreatIntelMode> threatIntelMode = default; Optional <WritableSubResource> virtualHub = default; Optional <WritableSubResource> firewallPolicy = default; Optional <HubIPAddresses> hubIPAddresses = default; Optional <IReadOnlyList <AzureFirewallIPGroups> > ipGroups = default; Optional <AzureFirewallSku> sku = default; Optional <IDictionary <string, string> > additionalProperties = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("zones")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <string> array = new List <string>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(item.GetString()); } zones = array; continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("location")) { location = property.Value.GetString(); continue; } if (property.NameEquals("tags")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetString()); } tags = dictionary; continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("applicationRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallApplicationRuleCollection> array = new List <AzureFirewallApplicationRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallApplicationRuleCollection.DeserializeAzureFirewallApplicationRuleCollection(item)); } applicationRuleCollections = array; continue; } if (property0.NameEquals("natRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallNatRuleCollection> array = new List <AzureFirewallNatRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallNatRuleCollection.DeserializeAzureFirewallNatRuleCollection(item)); } natRuleCollections = array; continue; } if (property0.NameEquals("networkRuleCollections")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallNetworkRuleCollection> array = new List <AzureFirewallNetworkRuleCollection>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallNetworkRuleCollection.DeserializeAzureFirewallNetworkRuleCollection(item)); } networkRuleCollections = array; continue; } if (property0.NameEquals("ipConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallIPConfiguration> array = new List <AzureFirewallIPConfiguration>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallIPConfiguration.DeserializeAzureFirewallIPConfiguration(item)); } ipConfigurations = array; continue; } if (property0.NameEquals("managementIpConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } managementIpConfiguration = AzureFirewallIPConfiguration.DeserializeAzureFirewallIPConfiguration(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("threatIntelMode")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } threatIntelMode = new AzureFirewallThreatIntelMode(property0.Value.GetString()); continue; } if (property0.NameEquals("virtualHub")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } virtualHub = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("firewallPolicy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } firewallPolicy = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("hubIPAddresses")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } hubIPAddresses = HubIPAddresses.DeserializeHubIPAddresses(property0.Value); continue; } if (property0.NameEquals("ipGroups")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <AzureFirewallIPGroups> array = new List <AzureFirewallIPGroups>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(AzureFirewallIPGroups.DeserializeAzureFirewallIPGroups(item)); } ipGroups = array; continue; } if (property0.NameEquals("sku")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } sku = AzureFirewallSku.DeserializeAzureFirewallSku(property0.Value); continue; } if (property0.NameEquals("additionalProperties")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, string> dictionary = new Dictionary <string, string>(); foreach (var property1 in property0.Value.EnumerateObject()) { dictionary.Add(property1.Name, property1.Value.GetString()); } additionalProperties = dictionary; continue; } } continue; } } return(new AzureFirewallData(id.Value, name.Value, type.Value, location.Value, Optional.ToDictionary(tags), Optional.ToList(zones), etag.Value, Optional.ToList(applicationRuleCollections), Optional.ToList(natRuleCollections), Optional.ToList(networkRuleCollections), Optional.ToList(ipConfigurations), managementIpConfiguration.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(threatIntelMode), virtualHub, firewallPolicy, hubIPAddresses.Value, Optional.ToList(ipGroups), sku.Value, Optional.ToDictionary(additionalProperties))); }