< Summary

Class:Azure.ResourceManager.Network.Models.ApplicationGateway
Assembly:Azure.ResourceManager.Network
File(s):C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\Models\ApplicationGateway.cs
C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\Models\ApplicationGateway.Serialization.cs
Covered lines:0
Uncovered lines:480
Coverable lines:480
Total lines:987
Line coverage:0% (0 of 480)
Covered branches:0
Total branches:312
Branch coverage:0% (0 of 312)

Metrics

MethodCyclomatic complexity Line coverage Branch coverage
.ctor()-0%100%
.ctor(...)-0%100%
get_Etag()-0%100%
get_Zones()-0%100%
get_Identity()-0%100%
get_Sku()-0%100%
get_SslPolicy()-0%100%
get_OperationalState()-0%100%
get_GatewayIPConfigurations()-0%100%
get_AuthenticationCertificates()-0%100%
get_TrustedRootCertificates()-0%100%
get_SslCertificates()-0%100%
get_FrontendIPConfigurations()-0%100%
get_FrontendPorts()-0%100%
get_Probes()-0%100%
get_BackendAddressPools()-0%100%
get_BackendHttpSettingsCollection()-0%100%
get_HttpListeners()-0%100%
get_UrlPathMaps()-0%100%
get_RequestRoutingRules()-0%100%
get_RewriteRuleSets()-0%100%
get_RedirectConfigurations()-0%100%
get_WebApplicationFirewallConfiguration()-0%100%
get_FirewallPolicy()-0%100%
get_EnableHttp2()-0%100%
get_EnableFips()-0%100%
get_AutoscaleConfiguration()-0%100%
get_ResourceGuid()-0%100%
get_ProvisioningState()-0%100%
get_CustomErrorConfigurations()-0%100%
get_ForceFirewallPolicyAssociation()-0%100%
Azure.Core.IUtf8JsonSerializable.Write(...)-0%0%
DeserializeApplicationGateway(...)-0%0%

File(s)

C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\Models\ApplicationGateway.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System.Collections.Generic;
 9
 10namespace Azure.ResourceManager.Network.Models
 11{
 12    /// <summary> Application gateway resource. </summary>
 13    public partial class ApplicationGateway : Resource
 14    {
 15        /// <summary> Initializes a new instance of ApplicationGateway. </summary>
 016        public ApplicationGateway()
 17        {
 018        }
 19
 20        /// <summary> Initializes a new instance of ApplicationGateway. </summary>
 21        /// <param name="id"> Resource ID. </param>
 22        /// <param name="name"> Resource name. </param>
 23        /// <param name="type"> Resource type. </param>
 24        /// <param name="location"> Resource location. </param>
 25        /// <param name="tags"> Resource tags. </param>
 26        /// <param name="etag"> A unique read-only string that changes whenever the resource is updated. </param>
 27        /// <param name="zones"> A list of availability zones denoting where the resource needs to come from. </param>
 28        /// <param name="identity"> The identity of the application gateway, if configured. </param>
 29        /// <param name="sku"> SKU of the application gateway resource. </param>
 30        /// <param name="sslPolicy"> SSL policy of the application gateway resource. </param>
 31        /// <param name="operationalState"> Operational state of the application gateway resource. </param>
 32        /// <param name="gatewayIPConfigurations"> Subnets of the application gateway resource. For default limits, see 
 33        /// <param name="authenticationCertificates"> Authentication certificates of the application gateway resource. F
 34        /// <param name="trustedRootCertificates"> Trusted Root certificates of the application gateway resource. For de
 35        /// <param name="sslCertificates"> SSL certificates of the application gateway resource. For default limits, see
 36        /// <param name="frontendIPConfigurations"> Frontend IP addresses of the application gateway resource. For defau
 37        /// <param name="frontendPorts"> Frontend ports of the application gateway resource. For default limits, see [Ap
 38        /// <param name="probes"> Probes of the application gateway resource. </param>
 39        /// <param name="backendAddressPools"> Backend address pool of the application gateway resource. For default lim
 40        /// <param name="backendHttpSettingsCollection"> Backend http settings of the application gateway resource. For 
 41        /// <param name="httpListeners"> Http listeners of the application gateway resource. For default limits, see [Ap
 42        /// <param name="urlPathMaps"> URL path map of the application gateway resource. For default limits, see [Applic
 43        /// <param name="requestRoutingRules"> Request routing rules of the application gateway resource. </param>
 44        /// <param name="rewriteRuleSets"> Rewrite rules for the application gateway resource. </param>
 45        /// <param name="redirectConfigurations"> Redirect configurations of the application gateway resource. For defau
 46        /// <param name="webApplicationFirewallConfiguration"> Web application firewall configuration. </param>
 47        /// <param name="firewallPolicy"> Reference to the FirewallPolicy resource. </param>
 48        /// <param name="enableHttp2"> Whether HTTP2 is enabled on the application gateway resource. </param>
 49        /// <param name="enableFips"> Whether FIPS is enabled on the application gateway resource. </param>
 50        /// <param name="autoscaleConfiguration"> Autoscale Configuration. </param>
 51        /// <param name="resourceGuid"> The resource GUID property of the application gateway resource. </param>
 52        /// <param name="provisioningState"> The provisioning state of the application gateway resource. </param>
 53        /// <param name="customErrorConfigurations"> Custom error configurations of the application gateway resource. </
 54        /// <param name="forceFirewallPolicyAssociation"> If true, associates a firewall policy with an application gate
 055        internal ApplicationGateway(string id, string name, string type, string location, IDictionary<string, string> ta
 56        {
 057            Etag = etag;
 058            Zones = zones;
 059            Identity = identity;
 060            Sku = sku;
 061            SslPolicy = sslPolicy;
 062            OperationalState = operationalState;
 063            GatewayIPConfigurations = gatewayIPConfigurations;
 064            AuthenticationCertificates = authenticationCertificates;
 065            TrustedRootCertificates = trustedRootCertificates;
 066            SslCertificates = sslCertificates;
 067            FrontendIPConfigurations = frontendIPConfigurations;
 068            FrontendPorts = frontendPorts;
 069            Probes = probes;
 070            BackendAddressPools = backendAddressPools;
 071            BackendHttpSettingsCollection = backendHttpSettingsCollection;
 072            HttpListeners = httpListeners;
 073            UrlPathMaps = urlPathMaps;
 074            RequestRoutingRules = requestRoutingRules;
 075            RewriteRuleSets = rewriteRuleSets;
 076            RedirectConfigurations = redirectConfigurations;
 077            WebApplicationFirewallConfiguration = webApplicationFirewallConfiguration;
 078            FirewallPolicy = firewallPolicy;
 079            EnableHttp2 = enableHttp2;
 080            EnableFips = enableFips;
 081            AutoscaleConfiguration = autoscaleConfiguration;
 082            ResourceGuid = resourceGuid;
 083            ProvisioningState = provisioningState;
 084            CustomErrorConfigurations = customErrorConfigurations;
 085            ForceFirewallPolicyAssociation = forceFirewallPolicyAssociation;
 086        }
 87
 88        /// <summary> A unique read-only string that changes whenever the resource is updated. </summary>
 089        public string Etag { get; }
 90        /// <summary> A list of availability zones denoting where the resource needs to come from. </summary>
 091        public IList<string> Zones { get; set; }
 92        /// <summary> The identity of the application gateway, if configured. </summary>
 093        public ManagedServiceIdentity Identity { get; set; }
 94        /// <summary> SKU of the application gateway resource. </summary>
 095        public ApplicationGatewaySku Sku { get; set; }
 96        /// <summary> SSL policy of the application gateway resource. </summary>
 097        public ApplicationGatewaySslPolicy SslPolicy { get; set; }
 98        /// <summary> Operational state of the application gateway resource. </summary>
 099        public ApplicationGatewayOperationalState? OperationalState { get; }
 100        /// <summary> Subnets of the application gateway resource. For default limits, see [Application Gateway limits](
 0101        public IList<ApplicationGatewayIPConfiguration> GatewayIPConfigurations { get; set; }
 102        /// <summary> Authentication certificates of the application gateway resource. For default limits, see [Applicat
 0103        public IList<ApplicationGatewayAuthenticationCertificate> AuthenticationCertificates { get; set; }
 104        /// <summary> Trusted Root certificates of the application gateway resource. For default limits, see [Applicatio
 0105        public IList<ApplicationGatewayTrustedRootCertificate> TrustedRootCertificates { get; set; }
 106        /// <summary> SSL certificates of the application gateway resource. For default limits, see [Application Gateway
 0107        public IList<ApplicationGatewaySslCertificate> SslCertificates { get; set; }
 108        /// <summary> Frontend IP addresses of the application gateway resource. For default limits, see [Application Ga
 0109        public IList<ApplicationGatewayFrontendIPConfiguration> FrontendIPConfigurations { get; set; }
 110        /// <summary> Frontend ports of the application gateway resource. For default limits, see [Application Gateway l
 0111        public IList<ApplicationGatewayFrontendPort> FrontendPorts { get; set; }
 112        /// <summary> Probes of the application gateway resource. </summary>
 0113        public IList<ApplicationGatewayProbe> Probes { get; set; }
 114        /// <summary> Backend address pool of the application gateway resource. For default limits, see [Application Gat
 0115        public IList<ApplicationGatewayBackendAddressPool> BackendAddressPools { get; set; }
 116        /// <summary> Backend http settings of the application gateway resource. For default limits, see [Application Ga
 0117        public IList<ApplicationGatewayBackendHttpSettings> BackendHttpSettingsCollection { get; set; }
 118        /// <summary> Http listeners of the application gateway resource. For default limits, see [Application Gateway l
 0119        public IList<ApplicationGatewayHttpListener> HttpListeners { get; set; }
 120        /// <summary> URL path map of the application gateway resource. For default limits, see [Application Gateway lim
 0121        public IList<ApplicationGatewayUrlPathMap> UrlPathMaps { get; set; }
 122        /// <summary> Request routing rules of the application gateway resource. </summary>
 0123        public IList<ApplicationGatewayRequestRoutingRule> RequestRoutingRules { get; set; }
 124        /// <summary> Rewrite rules for the application gateway resource. </summary>
 0125        public IList<ApplicationGatewayRewriteRuleSet> RewriteRuleSets { get; set; }
 126        /// <summary> Redirect configurations of the application gateway resource. For default limits, see [Application 
 0127        public IList<ApplicationGatewayRedirectConfiguration> RedirectConfigurations { get; set; }
 128        /// <summary> Web application firewall configuration. </summary>
 0129        public ApplicationGatewayWebApplicationFirewallConfiguration WebApplicationFirewallConfiguration { get; set; }
 130        /// <summary> Reference to the FirewallPolicy resource. </summary>
 0131        public SubResource FirewallPolicy { get; set; }
 132        /// <summary> Whether HTTP2 is enabled on the application gateway resource. </summary>
 0133        public bool? EnableHttp2 { get; set; }
 134        /// <summary> Whether FIPS is enabled on the application gateway resource. </summary>
 0135        public bool? EnableFips { get; set; }
 136        /// <summary> Autoscale Configuration. </summary>
 0137        public ApplicationGatewayAutoscaleConfiguration AutoscaleConfiguration { get; set; }
 138        /// <summary> The resource GUID property of the application gateway resource. </summary>
 0139        public string ResourceGuid { get; }
 140        /// <summary> The provisioning state of the application gateway resource. </summary>
 0141        public ProvisioningState? ProvisioningState { get; }
 142        /// <summary> Custom error configurations of the application gateway resource. </summary>
 0143        public IList<ApplicationGatewayCustomError> CustomErrorConfigurations { get; set; }
 144        /// <summary> If true, associates a firewall policy with an application gateway regardless whether the policy di
 0145        public bool? ForceFirewallPolicyAssociation { get; set; }
 146    }
 147}

C:\Git\azure-sdk-for-net\sdk\network\Azure.ResourceManager.Network\src\Generated\Models\ApplicationGateway.Serialization.cs

#LineLine coverage
 1// Copyright (c) Microsoft Corporation. All rights reserved.
 2// Licensed under the MIT License.
 3
 4// <auto-generated/>
 5
 6#nullable disable
 7
 8using System.Collections.Generic;
 9using System.Text.Json;
 10using Azure.Core;
 11
 12namespace Azure.ResourceManager.Network.Models
 13{
 14    public partial class ApplicationGateway : IUtf8JsonSerializable
 15    {
 16        void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 17        {
 018            writer.WriteStartObject();
 019            if (Etag != null)
 20            {
 021                writer.WritePropertyName("etag");
 022                writer.WriteStringValue(Etag);
 23            }
 024            if (Zones != null)
 25            {
 026                writer.WritePropertyName("zones");
 027                writer.WriteStartArray();
 028                foreach (var item in Zones)
 29                {
 030                    writer.WriteStringValue(item);
 31                }
 032                writer.WriteEndArray();
 33            }
 034            if (Identity != null)
 35            {
 036                writer.WritePropertyName("identity");
 037                writer.WriteObjectValue(Identity);
 38            }
 039            if (Id != null)
 40            {
 041                writer.WritePropertyName("id");
 042                writer.WriteStringValue(Id);
 43            }
 044            if (Name != null)
 45            {
 046                writer.WritePropertyName("name");
 047                writer.WriteStringValue(Name);
 48            }
 049            if (Type != null)
 50            {
 051                writer.WritePropertyName("type");
 052                writer.WriteStringValue(Type);
 53            }
 054            if (Location != null)
 55            {
 056                writer.WritePropertyName("location");
 057                writer.WriteStringValue(Location);
 58            }
 059            if (Tags != null)
 60            {
 061                writer.WritePropertyName("tags");
 062                writer.WriteStartObject();
 063                foreach (var item in Tags)
 64                {
 065                    writer.WritePropertyName(item.Key);
 066                    writer.WriteStringValue(item.Value);
 67                }
 068                writer.WriteEndObject();
 69            }
 070            writer.WritePropertyName("properties");
 071            writer.WriteStartObject();
 072            if (Sku != null)
 73            {
 074                writer.WritePropertyName("sku");
 075                writer.WriteObjectValue(Sku);
 76            }
 077            if (SslPolicy != null)
 78            {
 079                writer.WritePropertyName("sslPolicy");
 080                writer.WriteObjectValue(SslPolicy);
 81            }
 082            if (OperationalState != null)
 83            {
 084                writer.WritePropertyName("operationalState");
 085                writer.WriteStringValue(OperationalState.Value.ToString());
 86            }
 087            if (GatewayIPConfigurations != null)
 88            {
 089                writer.WritePropertyName("gatewayIPConfigurations");
 090                writer.WriteStartArray();
 091                foreach (var item in GatewayIPConfigurations)
 92                {
 093                    writer.WriteObjectValue(item);
 94                }
 095                writer.WriteEndArray();
 96            }
 097            if (AuthenticationCertificates != null)
 98            {
 099                writer.WritePropertyName("authenticationCertificates");
 0100                writer.WriteStartArray();
 0101                foreach (var item in AuthenticationCertificates)
 102                {
 0103                    writer.WriteObjectValue(item);
 104                }
 0105                writer.WriteEndArray();
 106            }
 0107            if (TrustedRootCertificates != null)
 108            {
 0109                writer.WritePropertyName("trustedRootCertificates");
 0110                writer.WriteStartArray();
 0111                foreach (var item in TrustedRootCertificates)
 112                {
 0113                    writer.WriteObjectValue(item);
 114                }
 0115                writer.WriteEndArray();
 116            }
 0117            if (SslCertificates != null)
 118            {
 0119                writer.WritePropertyName("sslCertificates");
 0120                writer.WriteStartArray();
 0121                foreach (var item in SslCertificates)
 122                {
 0123                    writer.WriteObjectValue(item);
 124                }
 0125                writer.WriteEndArray();
 126            }
 0127            if (FrontendIPConfigurations != null)
 128            {
 0129                writer.WritePropertyName("frontendIPConfigurations");
 0130                writer.WriteStartArray();
 0131                foreach (var item in FrontendIPConfigurations)
 132                {
 0133                    writer.WriteObjectValue(item);
 134                }
 0135                writer.WriteEndArray();
 136            }
 0137            if (FrontendPorts != null)
 138            {
 0139                writer.WritePropertyName("frontendPorts");
 0140                writer.WriteStartArray();
 0141                foreach (var item in FrontendPorts)
 142                {
 0143                    writer.WriteObjectValue(item);
 144                }
 0145                writer.WriteEndArray();
 146            }
 0147            if (Probes != null)
 148            {
 0149                writer.WritePropertyName("probes");
 0150                writer.WriteStartArray();
 0151                foreach (var item in Probes)
 152                {
 0153                    writer.WriteObjectValue(item);
 154                }
 0155                writer.WriteEndArray();
 156            }
 0157            if (BackendAddressPools != null)
 158            {
 0159                writer.WritePropertyName("backendAddressPools");
 0160                writer.WriteStartArray();
 0161                foreach (var item in BackendAddressPools)
 162                {
 0163                    writer.WriteObjectValue(item);
 164                }
 0165                writer.WriteEndArray();
 166            }
 0167            if (BackendHttpSettingsCollection != null)
 168            {
 0169                writer.WritePropertyName("backendHttpSettingsCollection");
 0170                writer.WriteStartArray();
 0171                foreach (var item in BackendHttpSettingsCollection)
 172                {
 0173                    writer.WriteObjectValue(item);
 174                }
 0175                writer.WriteEndArray();
 176            }
 0177            if (HttpListeners != null)
 178            {
 0179                writer.WritePropertyName("httpListeners");
 0180                writer.WriteStartArray();
 0181                foreach (var item in HttpListeners)
 182                {
 0183                    writer.WriteObjectValue(item);
 184                }
 0185                writer.WriteEndArray();
 186            }
 0187            if (UrlPathMaps != null)
 188            {
 0189                writer.WritePropertyName("urlPathMaps");
 0190                writer.WriteStartArray();
 0191                foreach (var item in UrlPathMaps)
 192                {
 0193                    writer.WriteObjectValue(item);
 194                }
 0195                writer.WriteEndArray();
 196            }
 0197            if (RequestRoutingRules != null)
 198            {
 0199                writer.WritePropertyName("requestRoutingRules");
 0200                writer.WriteStartArray();
 0201                foreach (var item in RequestRoutingRules)
 202                {
 0203                    writer.WriteObjectValue(item);
 204                }
 0205                writer.WriteEndArray();
 206            }
 0207            if (RewriteRuleSets != null)
 208            {
 0209                writer.WritePropertyName("rewriteRuleSets");
 0210                writer.WriteStartArray();
 0211                foreach (var item in RewriteRuleSets)
 212                {
 0213                    writer.WriteObjectValue(item);
 214                }
 0215                writer.WriteEndArray();
 216            }
 0217            if (RedirectConfigurations != null)
 218            {
 0219                writer.WritePropertyName("redirectConfigurations");
 0220                writer.WriteStartArray();
 0221                foreach (var item in RedirectConfigurations)
 222                {
 0223                    writer.WriteObjectValue(item);
 224                }
 0225                writer.WriteEndArray();
 226            }
 0227            if (WebApplicationFirewallConfiguration != null)
 228            {
 0229                writer.WritePropertyName("webApplicationFirewallConfiguration");
 0230                writer.WriteObjectValue(WebApplicationFirewallConfiguration);
 231            }
 0232            if (FirewallPolicy != null)
 233            {
 0234                writer.WritePropertyName("firewallPolicy");
 0235                writer.WriteObjectValue(FirewallPolicy);
 236            }
 0237            if (EnableHttp2 != null)
 238            {
 0239                writer.WritePropertyName("enableHttp2");
 0240                writer.WriteBooleanValue(EnableHttp2.Value);
 241            }
 0242            if (EnableFips != null)
 243            {
 0244                writer.WritePropertyName("enableFips");
 0245                writer.WriteBooleanValue(EnableFips.Value);
 246            }
 0247            if (AutoscaleConfiguration != null)
 248            {
 0249                writer.WritePropertyName("autoscaleConfiguration");
 0250                writer.WriteObjectValue(AutoscaleConfiguration);
 251            }
 0252            if (ResourceGuid != null)
 253            {
 0254                writer.WritePropertyName("resourceGuid");
 0255                writer.WriteStringValue(ResourceGuid);
 256            }
 0257            if (ProvisioningState != null)
 258            {
 0259                writer.WritePropertyName("provisioningState");
 0260                writer.WriteStringValue(ProvisioningState.Value.ToString());
 261            }
 0262            if (CustomErrorConfigurations != null)
 263            {
 0264                writer.WritePropertyName("customErrorConfigurations");
 0265                writer.WriteStartArray();
 0266                foreach (var item in CustomErrorConfigurations)
 267                {
 0268                    writer.WriteObjectValue(item);
 269                }
 0270                writer.WriteEndArray();
 271            }
 0272            if (ForceFirewallPolicyAssociation != null)
 273            {
 0274                writer.WritePropertyName("forceFirewallPolicyAssociation");
 0275                writer.WriteBooleanValue(ForceFirewallPolicyAssociation.Value);
 276            }
 0277            writer.WriteEndObject();
 0278            writer.WriteEndObject();
 0279        }
 280
 281        internal static ApplicationGateway DeserializeApplicationGateway(JsonElement element)
 282        {
 0283            string etag = default;
 0284            IList<string> zones = default;
 0285            ManagedServiceIdentity identity = default;
 0286            string id = default;
 0287            string name = default;
 0288            string type = default;
 0289            string location = default;
 0290            IDictionary<string, string> tags = default;
 0291            ApplicationGatewaySku sku = default;
 0292            ApplicationGatewaySslPolicy sslPolicy = default;
 0293            ApplicationGatewayOperationalState? operationalState = default;
 0294            IList<ApplicationGatewayIPConfiguration> gatewayIPConfigurations = default;
 0295            IList<ApplicationGatewayAuthenticationCertificate> authenticationCertificates = default;
 0296            IList<ApplicationGatewayTrustedRootCertificate> trustedRootCertificates = default;
 0297            IList<ApplicationGatewaySslCertificate> sslCertificates = default;
 0298            IList<ApplicationGatewayFrontendIPConfiguration> frontendIPConfigurations = default;
 0299            IList<ApplicationGatewayFrontendPort> frontendPorts = default;
 0300            IList<ApplicationGatewayProbe> probes = default;
 0301            IList<ApplicationGatewayBackendAddressPool> backendAddressPools = default;
 0302            IList<ApplicationGatewayBackendHttpSettings> backendHttpSettingsCollection = default;
 0303            IList<ApplicationGatewayHttpListener> httpListeners = default;
 0304            IList<ApplicationGatewayUrlPathMap> urlPathMaps = default;
 0305            IList<ApplicationGatewayRequestRoutingRule> requestRoutingRules = default;
 0306            IList<ApplicationGatewayRewriteRuleSet> rewriteRuleSets = default;
 0307            IList<ApplicationGatewayRedirectConfiguration> redirectConfigurations = default;
 0308            ApplicationGatewayWebApplicationFirewallConfiguration webApplicationFirewallConfiguration = default;
 0309            SubResource firewallPolicy = default;
 0310            bool? enableHttp2 = default;
 0311            bool? enableFips = default;
 0312            ApplicationGatewayAutoscaleConfiguration autoscaleConfiguration = default;
 0313            string resourceGuid = default;
 0314            ProvisioningState? provisioningState = default;
 0315            IList<ApplicationGatewayCustomError> customErrorConfigurations = default;
 0316            bool? forceFirewallPolicyAssociation = default;
 0317            foreach (var property in element.EnumerateObject())
 318            {
 0319                if (property.NameEquals("etag"))
 320                {
 0321                    if (property.Value.ValueKind == JsonValueKind.Null)
 322                    {
 323                        continue;
 324                    }
 0325                    etag = property.Value.GetString();
 0326                    continue;
 327                }
 0328                if (property.NameEquals("zones"))
 329                {
 0330                    if (property.Value.ValueKind == JsonValueKind.Null)
 331                    {
 332                        continue;
 333                    }
 0334                    List<string> array = new List<string>();
 0335                    foreach (var item in property.Value.EnumerateArray())
 336                    {
 0337                        if (item.ValueKind == JsonValueKind.Null)
 338                        {
 0339                            array.Add(null);
 340                        }
 341                        else
 342                        {
 0343                            array.Add(item.GetString());
 344                        }
 345                    }
 0346                    zones = array;
 0347                    continue;
 348                }
 0349                if (property.NameEquals("identity"))
 350                {
 0351                    if (property.Value.ValueKind == JsonValueKind.Null)
 352                    {
 353                        continue;
 354                    }
 0355                    identity = ManagedServiceIdentity.DeserializeManagedServiceIdentity(property.Value);
 0356                    continue;
 357                }
 0358                if (property.NameEquals("id"))
 359                {
 0360                    if (property.Value.ValueKind == JsonValueKind.Null)
 361                    {
 362                        continue;
 363                    }
 0364                    id = property.Value.GetString();
 0365                    continue;
 366                }
 0367                if (property.NameEquals("name"))
 368                {
 0369                    if (property.Value.ValueKind == JsonValueKind.Null)
 370                    {
 371                        continue;
 372                    }
 0373                    name = property.Value.GetString();
 0374                    continue;
 375                }
 0376                if (property.NameEquals("type"))
 377                {
 0378                    if (property.Value.ValueKind == JsonValueKind.Null)
 379                    {
 380                        continue;
 381                    }
 0382                    type = property.Value.GetString();
 0383                    continue;
 384                }
 0385                if (property.NameEquals("location"))
 386                {
 0387                    if (property.Value.ValueKind == JsonValueKind.Null)
 388                    {
 389                        continue;
 390                    }
 0391                    location = property.Value.GetString();
 0392                    continue;
 393                }
 0394                if (property.NameEquals("tags"))
 395                {
 0396                    if (property.Value.ValueKind == JsonValueKind.Null)
 397                    {
 398                        continue;
 399                    }
 0400                    Dictionary<string, string> dictionary = new Dictionary<string, string>();
 0401                    foreach (var property0 in property.Value.EnumerateObject())
 402                    {
 0403                        if (property0.Value.ValueKind == JsonValueKind.Null)
 404                        {
 0405                            dictionary.Add(property0.Name, null);
 406                        }
 407                        else
 408                        {
 0409                            dictionary.Add(property0.Name, property0.Value.GetString());
 410                        }
 411                    }
 0412                    tags = dictionary;
 0413                    continue;
 414                }
 0415                if (property.NameEquals("properties"))
 416                {
 0417                    foreach (var property0 in property.Value.EnumerateObject())
 418                    {
 0419                        if (property0.NameEquals("sku"))
 420                        {
 0421                            if (property0.Value.ValueKind == JsonValueKind.Null)
 422                            {
 423                                continue;
 424                            }
 0425                            sku = ApplicationGatewaySku.DeserializeApplicationGatewaySku(property0.Value);
 0426                            continue;
 427                        }
 0428                        if (property0.NameEquals("sslPolicy"))
 429                        {
 0430                            if (property0.Value.ValueKind == JsonValueKind.Null)
 431                            {
 432                                continue;
 433                            }
 0434                            sslPolicy = ApplicationGatewaySslPolicy.DeserializeApplicationGatewaySslPolicy(property0.Val
 0435                            continue;
 436                        }
 0437                        if (property0.NameEquals("operationalState"))
 438                        {
 0439                            if (property0.Value.ValueKind == JsonValueKind.Null)
 440                            {
 441                                continue;
 442                            }
 0443                            operationalState = new ApplicationGatewayOperationalState(property0.Value.GetString());
 0444                            continue;
 445                        }
 0446                        if (property0.NameEquals("gatewayIPConfigurations"))
 447                        {
 0448                            if (property0.Value.ValueKind == JsonValueKind.Null)
 449                            {
 450                                continue;
 451                            }
 0452                            List<ApplicationGatewayIPConfiguration> array = new List<ApplicationGatewayIPConfiguration>(
 0453                            foreach (var item in property0.Value.EnumerateArray())
 454                            {
 0455                                if (item.ValueKind == JsonValueKind.Null)
 456                                {
 0457                                    array.Add(null);
 458                                }
 459                                else
 460                                {
 0461                                    array.Add(ApplicationGatewayIPConfiguration.DeserializeApplicationGatewayIPConfigura
 462                                }
 463                            }
 0464                            gatewayIPConfigurations = array;
 0465                            continue;
 466                        }
 0467                        if (property0.NameEquals("authenticationCertificates"))
 468                        {
 0469                            if (property0.Value.ValueKind == JsonValueKind.Null)
 470                            {
 471                                continue;
 472                            }
 0473                            List<ApplicationGatewayAuthenticationCertificate> array = new List<ApplicationGatewayAuthent
 0474                            foreach (var item in property0.Value.EnumerateArray())
 475                            {
 0476                                if (item.ValueKind == JsonValueKind.Null)
 477                                {
 0478                                    array.Add(null);
 479                                }
 480                                else
 481                                {
 0482                                    array.Add(ApplicationGatewayAuthenticationCertificate.DeserializeApplicationGatewayA
 483                                }
 484                            }
 0485                            authenticationCertificates = array;
 0486                            continue;
 487                        }
 0488                        if (property0.NameEquals("trustedRootCertificates"))
 489                        {
 0490                            if (property0.Value.ValueKind == JsonValueKind.Null)
 491                            {
 492                                continue;
 493                            }
 0494                            List<ApplicationGatewayTrustedRootCertificate> array = new List<ApplicationGatewayTrustedRoo
 0495                            foreach (var item in property0.Value.EnumerateArray())
 496                            {
 0497                                if (item.ValueKind == JsonValueKind.Null)
 498                                {
 0499                                    array.Add(null);
 500                                }
 501                                else
 502                                {
 0503                                    array.Add(ApplicationGatewayTrustedRootCertificate.DeserializeApplicationGatewayTrus
 504                                }
 505                            }
 0506                            trustedRootCertificates = array;
 0507                            continue;
 508                        }
 0509                        if (property0.NameEquals("sslCertificates"))
 510                        {
 0511                            if (property0.Value.ValueKind == JsonValueKind.Null)
 512                            {
 513                                continue;
 514                            }
 0515                            List<ApplicationGatewaySslCertificate> array = new List<ApplicationGatewaySslCertificate>();
 0516                            foreach (var item in property0.Value.EnumerateArray())
 517                            {
 0518                                if (item.ValueKind == JsonValueKind.Null)
 519                                {
 0520                                    array.Add(null);
 521                                }
 522                                else
 523                                {
 0524                                    array.Add(ApplicationGatewaySslCertificate.DeserializeApplicationGatewaySslCertifica
 525                                }
 526                            }
 0527                            sslCertificates = array;
 0528                            continue;
 529                        }
 0530                        if (property0.NameEquals("frontendIPConfigurations"))
 531                        {
 0532                            if (property0.Value.ValueKind == JsonValueKind.Null)
 533                            {
 534                                continue;
 535                            }
 0536                            List<ApplicationGatewayFrontendIPConfiguration> array = new List<ApplicationGatewayFrontendI
 0537                            foreach (var item in property0.Value.EnumerateArray())
 538                            {
 0539                                if (item.ValueKind == JsonValueKind.Null)
 540                                {
 0541                                    array.Add(null);
 542                                }
 543                                else
 544                                {
 0545                                    array.Add(ApplicationGatewayFrontendIPConfiguration.DeserializeApplicationGatewayFro
 546                                }
 547                            }
 0548                            frontendIPConfigurations = array;
 0549                            continue;
 550                        }
 0551                        if (property0.NameEquals("frontendPorts"))
 552                        {
 0553                            if (property0.Value.ValueKind == JsonValueKind.Null)
 554                            {
 555                                continue;
 556                            }
 0557                            List<ApplicationGatewayFrontendPort> array = new List<ApplicationGatewayFrontendPort>();
 0558                            foreach (var item in property0.Value.EnumerateArray())
 559                            {
 0560                                if (item.ValueKind == JsonValueKind.Null)
 561                                {
 0562                                    array.Add(null);
 563                                }
 564                                else
 565                                {
 0566                                    array.Add(ApplicationGatewayFrontendPort.DeserializeApplicationGatewayFrontendPort(i
 567                                }
 568                            }
 0569                            frontendPorts = array;
 0570                            continue;
 571                        }
 0572                        if (property0.NameEquals("probes"))
 573                        {
 0574                            if (property0.Value.ValueKind == JsonValueKind.Null)
 575                            {
 576                                continue;
 577                            }
 0578                            List<ApplicationGatewayProbe> array = new List<ApplicationGatewayProbe>();
 0579                            foreach (var item in property0.Value.EnumerateArray())
 580                            {
 0581                                if (item.ValueKind == JsonValueKind.Null)
 582                                {
 0583                                    array.Add(null);
 584                                }
 585                                else
 586                                {
 0587                                    array.Add(ApplicationGatewayProbe.DeserializeApplicationGatewayProbe(item));
 588                                }
 589                            }
 0590                            probes = array;
 0591                            continue;
 592                        }
 0593                        if (property0.NameEquals("backendAddressPools"))
 594                        {
 0595                            if (property0.Value.ValueKind == JsonValueKind.Null)
 596                            {
 597                                continue;
 598                            }
 0599                            List<ApplicationGatewayBackendAddressPool> array = new List<ApplicationGatewayBackendAddress
 0600                            foreach (var item in property0.Value.EnumerateArray())
 601                            {
 0602                                if (item.ValueKind == JsonValueKind.Null)
 603                                {
 0604                                    array.Add(null);
 605                                }
 606                                else
 607                                {
 0608                                    array.Add(ApplicationGatewayBackendAddressPool.DeserializeApplicationGatewayBackendA
 609                                }
 610                            }
 0611                            backendAddressPools = array;
 0612                            continue;
 613                        }
 0614                        if (property0.NameEquals("backendHttpSettingsCollection"))
 615                        {
 0616                            if (property0.Value.ValueKind == JsonValueKind.Null)
 617                            {
 618                                continue;
 619                            }
 0620                            List<ApplicationGatewayBackendHttpSettings> array = new List<ApplicationGatewayBackendHttpSe
 0621                            foreach (var item in property0.Value.EnumerateArray())
 622                            {
 0623                                if (item.ValueKind == JsonValueKind.Null)
 624                                {
 0625                                    array.Add(null);
 626                                }
 627                                else
 628                                {
 0629                                    array.Add(ApplicationGatewayBackendHttpSettings.DeserializeApplicationGatewayBackend
 630                                }
 631                            }
 0632                            backendHttpSettingsCollection = array;
 0633                            continue;
 634                        }
 0635                        if (property0.NameEquals("httpListeners"))
 636                        {
 0637                            if (property0.Value.ValueKind == JsonValueKind.Null)
 638                            {
 639                                continue;
 640                            }
 0641                            List<ApplicationGatewayHttpListener> array = new List<ApplicationGatewayHttpListener>();
 0642                            foreach (var item in property0.Value.EnumerateArray())
 643                            {
 0644                                if (item.ValueKind == JsonValueKind.Null)
 645                                {
 0646                                    array.Add(null);
 647                                }
 648                                else
 649                                {
 0650                                    array.Add(ApplicationGatewayHttpListener.DeserializeApplicationGatewayHttpListener(i
 651                                }
 652                            }
 0653                            httpListeners = array;
 0654                            continue;
 655                        }
 0656                        if (property0.NameEquals("urlPathMaps"))
 657                        {
 0658                            if (property0.Value.ValueKind == JsonValueKind.Null)
 659                            {
 660                                continue;
 661                            }
 0662                            List<ApplicationGatewayUrlPathMap> array = new List<ApplicationGatewayUrlPathMap>();
 0663                            foreach (var item in property0.Value.EnumerateArray())
 664                            {
 0665                                if (item.ValueKind == JsonValueKind.Null)
 666                                {
 0667                                    array.Add(null);
 668                                }
 669                                else
 670                                {
 0671                                    array.Add(ApplicationGatewayUrlPathMap.DeserializeApplicationGatewayUrlPathMap(item)
 672                                }
 673                            }
 0674                            urlPathMaps = array;
 0675                            continue;
 676                        }
 0677                        if (property0.NameEquals("requestRoutingRules"))
 678                        {
 0679                            if (property0.Value.ValueKind == JsonValueKind.Null)
 680                            {
 681                                continue;
 682                            }
 0683                            List<ApplicationGatewayRequestRoutingRule> array = new List<ApplicationGatewayRequestRouting
 0684                            foreach (var item in property0.Value.EnumerateArray())
 685                            {
 0686                                if (item.ValueKind == JsonValueKind.Null)
 687                                {
 0688                                    array.Add(null);
 689                                }
 690                                else
 691                                {
 0692                                    array.Add(ApplicationGatewayRequestRoutingRule.DeserializeApplicationGatewayRequestR
 693                                }
 694                            }
 0695                            requestRoutingRules = array;
 0696                            continue;
 697                        }
 0698                        if (property0.NameEquals("rewriteRuleSets"))
 699                        {
 0700                            if (property0.Value.ValueKind == JsonValueKind.Null)
 701                            {
 702                                continue;
 703                            }
 0704                            List<ApplicationGatewayRewriteRuleSet> array = new List<ApplicationGatewayRewriteRuleSet>();
 0705                            foreach (var item in property0.Value.EnumerateArray())
 706                            {
 0707                                if (item.ValueKind == JsonValueKind.Null)
 708                                {
 0709                                    array.Add(null);
 710                                }
 711                                else
 712                                {
 0713                                    array.Add(ApplicationGatewayRewriteRuleSet.DeserializeApplicationGatewayRewriteRuleS
 714                                }
 715                            }
 0716                            rewriteRuleSets = array;
 0717                            continue;
 718                        }
 0719                        if (property0.NameEquals("redirectConfigurations"))
 720                        {
 0721                            if (property0.Value.ValueKind == JsonValueKind.Null)
 722                            {
 723                                continue;
 724                            }
 0725                            List<ApplicationGatewayRedirectConfiguration> array = new List<ApplicationGatewayRedirectCon
 0726                            foreach (var item in property0.Value.EnumerateArray())
 727                            {
 0728                                if (item.ValueKind == JsonValueKind.Null)
 729                                {
 0730                                    array.Add(null);
 731                                }
 732                                else
 733                                {
 0734                                    array.Add(ApplicationGatewayRedirectConfiguration.DeserializeApplicationGatewayRedir
 735                                }
 736                            }
 0737                            redirectConfigurations = array;
 0738                            continue;
 739                        }
 0740                        if (property0.NameEquals("webApplicationFirewallConfiguration"))
 741                        {
 0742                            if (property0.Value.ValueKind == JsonValueKind.Null)
 743                            {
 744                                continue;
 745                            }
 0746                            webApplicationFirewallConfiguration = ApplicationGatewayWebApplicationFirewallConfiguration.
 0747                            continue;
 748                        }
 0749                        if (property0.NameEquals("firewallPolicy"))
 750                        {
 0751                            if (property0.Value.ValueKind == JsonValueKind.Null)
 752                            {
 753                                continue;
 754                            }
 0755                            firewallPolicy = SubResource.DeserializeSubResource(property0.Value);
 0756                            continue;
 757                        }
 0758                        if (property0.NameEquals("enableHttp2"))
 759                        {
 0760                            if (property0.Value.ValueKind == JsonValueKind.Null)
 761                            {
 762                                continue;
 763                            }
 0764                            enableHttp2 = property0.Value.GetBoolean();
 0765                            continue;
 766                        }
 0767                        if (property0.NameEquals("enableFips"))
 768                        {
 0769                            if (property0.Value.ValueKind == JsonValueKind.Null)
 770                            {
 771                                continue;
 772                            }
 0773                            enableFips = property0.Value.GetBoolean();
 0774                            continue;
 775                        }
 0776                        if (property0.NameEquals("autoscaleConfiguration"))
 777                        {
 0778                            if (property0.Value.ValueKind == JsonValueKind.Null)
 779                            {
 780                                continue;
 781                            }
 0782                            autoscaleConfiguration = ApplicationGatewayAutoscaleConfiguration.DeserializeApplicationGate
 0783                            continue;
 784                        }
 0785                        if (property0.NameEquals("resourceGuid"))
 786                        {
 0787                            if (property0.Value.ValueKind == JsonValueKind.Null)
 788                            {
 789                                continue;
 790                            }
 0791                            resourceGuid = property0.Value.GetString();
 0792                            continue;
 793                        }
 0794                        if (property0.NameEquals("provisioningState"))
 795                        {
 0796                            if (property0.Value.ValueKind == JsonValueKind.Null)
 797                            {
 798                                continue;
 799                            }
 0800                            provisioningState = new ProvisioningState(property0.Value.GetString());
 0801                            continue;
 802                        }
 0803                        if (property0.NameEquals("customErrorConfigurations"))
 804                        {
 0805                            if (property0.Value.ValueKind == JsonValueKind.Null)
 806                            {
 807                                continue;
 808                            }
 0809                            List<ApplicationGatewayCustomError> array = new List<ApplicationGatewayCustomError>();
 0810                            foreach (var item in property0.Value.EnumerateArray())
 811                            {
 0812                                if (item.ValueKind == JsonValueKind.Null)
 813                                {
 0814                                    array.Add(null);
 815                                }
 816                                else
 817                                {
 0818                                    array.Add(ApplicationGatewayCustomError.DeserializeApplicationGatewayCustomError(ite
 819                                }
 820                            }
 0821                            customErrorConfigurations = array;
 0822                            continue;
 823                        }
 0824                        if (property0.NameEquals("forceFirewallPolicyAssociation"))
 825                        {
 0826                            if (property0.Value.ValueKind == JsonValueKind.Null)
 827                            {
 828                                continue;
 829                            }
 0830                            forceFirewallPolicyAssociation = property0.Value.GetBoolean();
 831                            continue;
 832                        }
 833                    }
 834                    continue;
 835                }
 836            }
 0837            return new ApplicationGateway(id, name, type, location, tags, etag, zones, identity, sku, sslPolicy, operati
 838        }
 839    }
 840}