internal static ApplicationGatewayProbe DeserializeApplicationGatewayProbe(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; Optional <string> id = default; Optional <ApplicationGatewayProtocol> protocol = default; Optional <string> host = default; Optional <string> path = default; Optional <int> interval = default; Optional <int> timeout = default; Optional <int> unhealthyThreshold = default; Optional <bool> pickHostNameFromBackendHttpSettings = default; Optional <int> minServers = default; Optional <ApplicationGatewayProbeHealthResponseMatch> match = default; Optional <ProvisioningState> provisioningState = default; Optional <int> port = 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")) { foreach (var property0 in property.Value.EnumerateObject()) { if (property0.NameEquals("protocol")) { protocol = new ApplicationGatewayProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("host")) { host = property0.Value.GetString(); continue; } if (property0.NameEquals("path")) { path = property0.Value.GetString(); continue; } if (property0.NameEquals("interval")) { interval = property0.Value.GetInt32(); continue; } if (property0.NameEquals("timeout")) { timeout = property0.Value.GetInt32(); continue; } if (property0.NameEquals("unhealthyThreshold")) { unhealthyThreshold = property0.Value.GetInt32(); continue; } if (property0.NameEquals("pickHostNameFromBackendHttpSettings")) { pickHostNameFromBackendHttpSettings = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("minServers")) { minServers = property0.Value.GetInt32(); continue; } if (property0.NameEquals("match")) { match = ApplicationGatewayProbeHealthResponseMatch.DeserializeApplicationGatewayProbeHealthResponseMatch(property0.Value); continue; } if (property0.NameEquals("provisioningState")) { provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("port")) { port = property0.Value.GetInt32(); continue; } } continue; } } return(new ApplicationGatewayProbe(id.Value, name.Value, etag.Value, type.Value, Optional.ToNullable(protocol), host.Value, path.Value, Optional.ToNullable(interval), Optional.ToNullable(timeout), Optional.ToNullable(unhealthyThreshold), Optional.ToNullable(pickHostNameFromBackendHttpSettings), Optional.ToNullable(minServers), match.Value, Optional.ToNullable(provisioningState), Optional.ToNullable(port))); }
internal static ApplicationGatewayHttpListener DeserializeApplicationGatewayHttpListener(JsonElement element) { string name = default; string etag = default; string type = default; string id = default; SubResource frontendIPConfiguration = default; SubResource frontendPort = default; ApplicationGatewayProtocol?protocol = default; string hostName = default; SubResource sslCertificate = default; bool? requireServerNameIndication = default; ProvisioningState?provisioningState = default; IList <ApplicationGatewayCustomError> customErrorConfigurations = default; SubResource firewallPolicy = default; IList <string> hostNames = 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("frontendIPConfiguration")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } frontendIPConfiguration = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("frontendPort")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } frontendPort = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("protocol")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } protocol = new ApplicationGatewayProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("hostName")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } hostName = property0.Value.GetString(); continue; } if (property0.NameEquals("sslCertificate")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } sslCertificate = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("requireServerNameIndication")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } requireServerNameIndication = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } if (property0.NameEquals("customErrorConfigurations")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } List <ApplicationGatewayCustomError> array = new List <ApplicationGatewayCustomError>(); foreach (var item in property0.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(ApplicationGatewayCustomError.DeserializeApplicationGatewayCustomError(item)); } } customErrorConfigurations = array; continue; } if (property0.NameEquals("firewallPolicy")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } firewallPolicy = DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("hostNames")) { if (property0.Value.ValueKind == JsonValueKind.Null) { continue; } List <string> array = new List <string>(); foreach (var item in property0.Value.EnumerateArray()) { if (item.ValueKind == JsonValueKind.Null) { array.Add(null); } else { array.Add(item.GetString()); } } hostNames = array; continue; } } continue; } } return(new ApplicationGatewayHttpListener(id, name, etag, type, frontendIPConfiguration, frontendPort, protocol, hostName, sslCertificate, requireServerNameIndication, provisioningState, customErrorConfigurations, firewallPolicy, hostNames)); }
internal static ApplicationGatewayBackendHttpSettings DeserializeApplicationGatewayBackendHttpSettings(JsonElement element) { Optional <string> name = default; Optional <string> etag = default; Optional <string> type = default; ResourceIdentifier id = default; Optional <int> port = default; Optional <ApplicationGatewayProtocol> protocol = default; Optional <ApplicationGatewayCookieBasedAffinity> cookieBasedAffinity = default; Optional <int> requestTimeout = default; Optional <SubResource> probe = default; Optional <IList <SubResource> > authenticationCertificates = default; Optional <IList <SubResource> > trustedRootCertificates = default; Optional <ApplicationGatewayConnectionDraining> connectionDraining = default; Optional <string> hostName = default; Optional <bool> pickHostNameFromBackendAddress = default; Optional <string> affinityCookieName = default; Optional <bool> probeEnabled = default; Optional <string> path = 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("port")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } port = property0.Value.GetInt32(); continue; } if (property0.NameEquals("protocol")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } protocol = new ApplicationGatewayProtocol(property0.Value.GetString()); continue; } if (property0.NameEquals("cookieBasedAffinity")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } cookieBasedAffinity = new ApplicationGatewayCookieBasedAffinity(property0.Value.GetString()); continue; } if (property0.NameEquals("requestTimeout")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } requestTimeout = property0.Value.GetInt32(); continue; } if (property0.NameEquals("probe")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } probe = SubResource.DeserializeSubResource(property0.Value); continue; } if (property0.NameEquals("authenticationCertificates")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } authenticationCertificates = array; continue; } if (property0.NameEquals("trustedRootCertificates")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } List <SubResource> array = new List <SubResource>(); foreach (var item in property0.Value.EnumerateArray()) { array.Add(SubResource.DeserializeSubResource(item)); } trustedRootCertificates = array; continue; } if (property0.NameEquals("connectionDraining")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } connectionDraining = ApplicationGatewayConnectionDraining.DeserializeApplicationGatewayConnectionDraining(property0.Value); continue; } if (property0.NameEquals("hostName")) { hostName = property0.Value.GetString(); continue; } if (property0.NameEquals("pickHostNameFromBackendAddress")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } pickHostNameFromBackendAddress = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("affinityCookieName")) { affinityCookieName = property0.Value.GetString(); continue; } if (property0.NameEquals("probeEnabled")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } probeEnabled = property0.Value.GetBoolean(); continue; } if (property0.NameEquals("path")) { path = property0.Value.GetString(); continue; } if (property0.NameEquals("provisioningState")) { if (property0.Value.ValueKind == JsonValueKind.Null) { property0.ThrowNonNullablePropertyIsNull(); continue; } provisioningState = new ProvisioningState(property0.Value.GetString()); continue; } } continue; } } return(new ApplicationGatewayBackendHttpSettings(id, name.Value, etag.Value, type.Value, Optional.ToNullable(port), Optional.ToNullable(protocol), Optional.ToNullable(cookieBasedAffinity), Optional.ToNullable(requestTimeout), probe.Value, Optional.ToList(authenticationCertificates), Optional.ToList(trustedRootCertificates), connectionDraining.Value, hostName.Value, Optional.ToNullable(pickHostNameFromBackendAddress), affinityCookieName.Value, Optional.ToNullable(probeEnabled), path.Value, Optional.ToNullable(provisioningState))); }