internal static AKSVariantResponse DeserializeAKSVariantResponse(JsonElement element) { if (element.TryGetProperty("computeType", out JsonElement discriminator)) { switch (discriminator.GetString()) { case "AKS": return(AKSServiceResponse.DeserializeAKSServiceResponse(element)); } } Optional <bool> isDefault = default; Optional <float> trafficPercentile = default; Optional <VariantType> type = default; Optional <string> description = default; Optional <IDictionary <string, string> > kvTags = default; Optional <IDictionary <string, string> > properties = default; Optional <WebServiceState> state = default; Optional <ServiceResponseBaseError> error = default; ComputeEnvironmentType computeType = default; Optional <DeploymentType> deploymentType = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("isDefault")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } isDefault = property.Value.GetBoolean(); continue; } if (property.NameEquals("trafficPercentile")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } trafficPercentile = property.Value.GetSingle(); continue; } if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } type = new VariantType(property.Value.GetString()); continue; } if (property.NameEquals("description")) { description = property.Value.GetString(); continue; } if (property.NameEquals("kvTags")) { 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()); } kvTags = dictionary; continue; } if (property.NameEquals("properties")) { 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()); } properties = dictionary; continue; } if (property.NameEquals("state")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } state = new WebServiceState(property.Value.GetString()); continue; } if (property.NameEquals("error")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } error = ServiceResponseBaseError.DeserializeServiceResponseBaseError(property.Value); continue; } if (property.NameEquals("computeType")) { computeType = new ComputeEnvironmentType(property.Value.GetString()); continue; } if (property.NameEquals("deploymentType")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } deploymentType = new DeploymentType(property.Value.GetString()); continue; } } return(new AKSVariantResponse(description.Value, Optional.ToDictionary(kvTags), Optional.ToDictionary(properties), Optional.ToNullable(state), error.Value, computeType, Optional.ToNullable(deploymentType), Optional.ToNullable(isDefault), Optional.ToNullable(trafficPercentile), Optional.ToNullable(type))); }
internal static AKSServiceResponse DeserializeAKSServiceResponse(JsonElement element) { Optional <IList <Model> > models = default; Optional <ContainerResourceRequirements> containerResourceRequirements = default; Optional <int> maxConcurrentRequestsPerContainer = default; Optional <int> maxQueueWaitMs = default; Optional <string> computeName = default; Optional <string> @namespace = default; Optional <int> numReplicas = default; Optional <AKSServiceResponseDataCollection> dataCollection = default; Optional <bool> appInsightsEnabled = default; Optional <AKSServiceResponseAutoScaler> autoScaler = default; Optional <string> scoringUri = default; Optional <AKSServiceResponseDeploymentStatus> deploymentStatus = default; Optional <int> scoringTimeoutMs = default; Optional <AKSServiceResponseLivenessProbeRequirements> livenessProbeRequirements = default; Optional <bool> authEnabled = default; Optional <bool> aadAuthEnabled = default; Optional <string> swaggerUri = default; Optional <IReadOnlyDictionary <string, object> > modelConfigMap = default; Optional <AKSServiceResponseEnvironmentImageRequest> environmentImageRequest = default; Optional <bool> isDefault = default; Optional <float> trafficPercentile = default; Optional <VariantType> type = default; Optional <string> description = default; Optional <IDictionary <string, string> > kvTags = default; Optional <IDictionary <string, string> > properties = default; Optional <WebServiceState> state = default; Optional <ServiceResponseBaseError> error = default; ComputeEnvironmentType computeType = default; Optional <DeploymentType> deploymentType = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("models")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <Model> array = new List <Model>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(Model.DeserializeModel(item)); } models = array; continue; } if (property.NameEquals("containerResourceRequirements")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } containerResourceRequirements = ContainerResourceRequirements.DeserializeContainerResourceRequirements(property.Value); continue; } if (property.NameEquals("maxConcurrentRequestsPerContainer")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } maxConcurrentRequestsPerContainer = property.Value.GetInt32(); continue; } if (property.NameEquals("maxQueueWaitMs")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } maxQueueWaitMs = property.Value.GetInt32(); continue; } if (property.NameEquals("computeName")) { computeName = property.Value.GetString(); continue; } if (property.NameEquals("namespace")) { @namespace = property.Value.GetString(); continue; } if (property.NameEquals("numReplicas")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } numReplicas = property.Value.GetInt32(); continue; } if (property.NameEquals("dataCollection")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } dataCollection = AKSServiceResponseDataCollection.DeserializeAKSServiceResponseDataCollection(property.Value); continue; } if (property.NameEquals("appInsightsEnabled")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } appInsightsEnabled = property.Value.GetBoolean(); continue; } if (property.NameEquals("autoScaler")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } autoScaler = AKSServiceResponseAutoScaler.DeserializeAKSServiceResponseAutoScaler(property.Value); continue; } if (property.NameEquals("scoringUri")) { scoringUri = property.Value.GetString(); continue; } if (property.NameEquals("deploymentStatus")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } deploymentStatus = AKSServiceResponseDeploymentStatus.DeserializeAKSServiceResponseDeploymentStatus(property.Value); continue; } if (property.NameEquals("scoringTimeoutMs")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } scoringTimeoutMs = property.Value.GetInt32(); continue; } if (property.NameEquals("livenessProbeRequirements")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } livenessProbeRequirements = AKSServiceResponseLivenessProbeRequirements.DeserializeAKSServiceResponseLivenessProbeRequirements(property.Value); continue; } if (property.NameEquals("authEnabled")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } authEnabled = property.Value.GetBoolean(); continue; } if (property.NameEquals("aadAuthEnabled")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } aadAuthEnabled = property.Value.GetBoolean(); continue; } if (property.NameEquals("swaggerUri")) { swaggerUri = property.Value.GetString(); continue; } if (property.NameEquals("modelConfigMap")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } Dictionary <string, object> dictionary = new Dictionary <string, object>(); foreach (var property0 in property.Value.EnumerateObject()) { dictionary.Add(property0.Name, property0.Value.GetObject()); } modelConfigMap = dictionary; continue; } if (property.NameEquals("environmentImageRequest")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } environmentImageRequest = AKSServiceResponseEnvironmentImageRequest.DeserializeAKSServiceResponseEnvironmentImageRequest(property.Value); continue; } if (property.NameEquals("isDefault")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } isDefault = property.Value.GetBoolean(); continue; } if (property.NameEquals("trafficPercentile")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } trafficPercentile = property.Value.GetSingle(); continue; } if (property.NameEquals("type")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } type = new VariantType(property.Value.GetString()); continue; } if (property.NameEquals("description")) { description = property.Value.GetString(); continue; } if (property.NameEquals("kvTags")) { 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()); } kvTags = dictionary; continue; } if (property.NameEquals("properties")) { 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()); } properties = dictionary; continue; } if (property.NameEquals("state")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } state = new WebServiceState(property.Value.GetString()); continue; } if (property.NameEquals("error")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } error = ServiceResponseBaseError.DeserializeServiceResponseBaseError(property.Value); continue; } if (property.NameEquals("computeType")) { computeType = new ComputeEnvironmentType(property.Value.GetString()); continue; } if (property.NameEquals("deploymentType")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } deploymentType = new DeploymentType(property.Value.GetString()); continue; } } return(new AKSServiceResponse(description.Value, Optional.ToDictionary(kvTags), Optional.ToDictionary(properties), Optional.ToNullable(state), error.Value, computeType, Optional.ToNullable(deploymentType), Optional.ToNullable(isDefault), Optional.ToNullable(trafficPercentile), Optional.ToNullable(type), Optional.ToList(models), containerResourceRequirements.Value, Optional.ToNullable(maxConcurrentRequestsPerContainer), Optional.ToNullable(maxQueueWaitMs), computeName.Value, @namespace.Value, Optional.ToNullable(numReplicas), dataCollection.Value, Optional.ToNullable(appInsightsEnabled), autoScaler.Value, scoringUri.Value, deploymentStatus.Value, Optional.ToNullable(scoringTimeoutMs), livenessProbeRequirements.Value, Optional.ToNullable(authEnabled), Optional.ToNullable(aadAuthEnabled), swaggerUri.Value, Optional.ToDictionary(modelConfigMap), environmentImageRequest.Value)); }