internal static ApplicationGatewayBackendHealthPool DeserializeApplicationGatewayBackendHealthPool(JsonElement element) { Optional <ApplicationGatewayBackendAddressPool> backendAddressPool = default; Optional <IReadOnlyList <ApplicationGatewayBackendHealthHttpSettings> > backendHttpSettingsCollection = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("backendAddressPool")) { backendAddressPool = ApplicationGatewayBackendAddressPool.DeserializeApplicationGatewayBackendAddressPool(property.Value); continue; } if (property.NameEquals("backendHttpSettingsCollection")) { List <ApplicationGatewayBackendHealthHttpSettings> array = new List <ApplicationGatewayBackendHealthHttpSettings>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(ApplicationGatewayBackendHealthHttpSettings.DeserializeApplicationGatewayBackendHealthHttpSettings(item)); } backendHttpSettingsCollection = array; continue; } } return(new ApplicationGatewayBackendHealthPool(backendAddressPool.Value, Optional.ToList(backendHttpSettingsCollection))); }
internal static ApplicationGatewayBackendHealthOnDemand DeserializeApplicationGatewayBackendHealthOnDemand(JsonElement element) { Optional <ApplicationGatewayBackendAddressPool> backendAddressPool = default; Optional <ApplicationGatewayBackendHealthHttpSettings> backendHealthHttpSettings = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("backendAddressPool")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } backendAddressPool = ApplicationGatewayBackendAddressPool.DeserializeApplicationGatewayBackendAddressPool(property.Value); continue; } if (property.NameEquals("backendHealthHttpSettings")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } backendHealthHttpSettings = ApplicationGatewayBackendHealthHttpSettings.DeserializeApplicationGatewayBackendHealthHttpSettings(property.Value); continue; } } return(new ApplicationGatewayBackendHealthOnDemand(backendAddressPool.Value, backendHealthHttpSettings.Value)); }
internal static ApplicationGatewayBackendHealthPool DeserializeApplicationGatewayBackendHealthPool(JsonElement element) { ApplicationGatewayBackendAddressPool backendAddressPool = default; IReadOnlyList <ApplicationGatewayBackendHealthHttpSettings> backendHttpSettingsCollection = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("backendAddressPool")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } backendAddressPool = ApplicationGatewayBackendAddressPool.DeserializeApplicationGatewayBackendAddressPool(property.Value); continue; } if (property.NameEquals("backendHttpSettingsCollection")) { if (property.Value.ValueKind == JsonValueKind.Null) { continue; } List <ApplicationGatewayBackendHealthHttpSettings> array = new List <ApplicationGatewayBackendHealthHttpSettings>(); foreach (var item in property.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(ApplicationGatewayBackendHealthHttpSettings.DeserializeApplicationGatewayBackendHealthHttpSettings(item)); } } backendHttpSettingsCollection = array; continue; } } return(new ApplicationGatewayBackendHealthPool(backendAddressPool, backendHttpSettingsCollection)); }