internal static ApplicationGatewayUrlPathMap DeserializeApplicationGatewayUrlPathMap(JsonElement element) { string name = default; string etag = default; string type = default; string id = default; SubResource defaultBackendAddressPool = default; SubResource defaultBackendHttpSettings = default; SubResource defaultRewriteRuleSet = default; SubResource defaultRedirectConfiguration = default; IList <ApplicationGatewayPathRule> pathRules = default; ProvisioningState?provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("defaultBackendAddressPool")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } defaultBackendAddressPool = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultBackendHttpSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } defaultBackendHttpSettings = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultRewriteRuleSet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } defaultRewriteRuleSet = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultRedirectConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } defaultRedirectConfiguration = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("pathRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } List <ApplicationGatewayPathRule> array = new List <ApplicationGatewayPathRule>(); foreach (var item in property0.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(ApplicationGatewayPathRule.DeserializeApplicationGatewayPathRule(item)); } } pathRules = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new ApplicationGatewayUrlPathMap(id, name, etag, type, defaultBackendAddressPool, defaultBackendHttpSettings, defaultRewriteRuleSet, defaultRedirectConfiguration, pathRules, provisioningState)); }
internal static ApplicationGatewayUrlPathMap DeserializeApplicationGatewayUrlPathMap(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <SubResource> defaultBackendAddressPool = default; Optional <SubResource> defaultBackendHttpSettings = default; Optional <SubResource> defaultRewriteRuleSet = default; Optional <SubResource> defaultRedirectConfiguration = default; Optional <IList <ApplicationGatewayPathRule> > pathRules = default; Optional <ProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("etag")) { etag = property.Value.GetString(); continue; } if (property.NameEquals("type")) { type = property.Value.GetString(); continue; } if (property.NameEquals("id")) { id = property.Value.GetString(); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("defaultBackendAddressPool")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultBackendAddressPool = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultBackendHttpSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultBackendHttpSettings = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultRewriteRuleSet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultRewriteRuleSet = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("defaultRedirectConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultRedirectConfiguration = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("pathRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ApplicationGatewayPathRule> array = new List <ApplicationGatewayPathRule>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ApplicationGatewayPathRule.DeserializeApplicationGatewayPathRule(item)); } pathRules = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new ApplicationGatewayUrlPathMap(id, name.Value, etag.Value, type.Value, defaultBackendAddressPool.Value, defaultBackendHttpSettings.Value, defaultRewriteRuleSet.Value, defaultRedirectConfiguration.Value, Optional.ToList(pathRules), Optional.ToNullable(provisioningState))); }
internal static ApplicationGatewayUrlPathMap DeserializeApplicationGatewayUrlPathMap(JsonElement element) { Optional <ETag> etag = default; Optional <ResourceIdentifier> id = default; Optional <string> name = default; Optional <ResourceType> type = default; Optional <WritableSubResource> defaultBackendAddressPool = default; Optional <WritableSubResource> defaultBackendHttpSettings = default; Optional <WritableSubResource> defaultRewriteRuleSet = default; Optional <WritableSubResource> defaultRedirectConfiguration = default; Optional <IList <ApplicationGatewayPathRule> > pathRules = default; Optional <NetworkProvisioningState> provisioningState = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("etag")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } etag = new ETag(property.Value.GetString()); continue; } if (property.NameEquals("id")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } id = new ResourceIdentifier(property.Value.GetString()); continue; } if (property.NameEquals("name")) { name = property.Value.GetString(); continue; } if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } type = new ResourceType(property.Value.GetString()); continue; } if (property.NameEquals("properties")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("defaultBackendAddressPool")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultBackendAddressPool = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("defaultBackendHttpSettings")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultBackendHttpSettings = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("defaultRewriteRuleSet")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultRewriteRuleSet = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("defaultRedirectConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } defaultRedirectConfiguration = JsonSerializer.Deserialize <WritableSubResource>(property0.Value.ToString()); continue; } if (property0.NameEquals("pathRules")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <ApplicationGatewayPathRule> array = new List <ApplicationGatewayPathRule>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(ApplicationGatewayPathRule.DeserializeApplicationGatewayPathRule(item)); } pathRules = array; continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new NetworkProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new ApplicationGatewayUrlPathMap(id.Value, name.Value, Optional.ToNullable(type), Optional.ToNullable(etag), defaultBackendAddressPool, defaultBackendHttpSettings, defaultRewriteRuleSet, defaultRedirectConfiguration, Optional.ToList(pathRules), Optional.ToNullable(provisioningState))); }