internal static GatewayOperatorProperties DeserializeGatewayOperatorProperties(JsonElement element) { Optional <GatewayOperatorResourceRequests> resourceRequests = default; Optional <IReadOnlyList <GatewayInstance> > instances = default; foreach (var property in element.EnumerateObject()) { if (property.NameEquals("resourceRequests")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } resourceRequests = GatewayOperatorResourceRequests.DeserializeGatewayOperatorResourceRequests(property.Value); continue; } if (property.NameEquals("instances")) { if (property.Value.ValueKind == JsonValueKind.Null) { property.ThrowNonNullablePropertyIsNull(); continue; } List <GatewayInstance> array = new List <GatewayInstance>(); foreach (var item in property.Value.EnumerateArray()) { array.Add(GatewayInstance.DeserializeGatewayInstance(item)); } instances = array; continue; } } return(new GatewayOperatorProperties(resourceRequests.Value, Optional.ToList(instances))); }
internal GatewayOperatorProperties(GatewayOperatorResourceRequests resourceRequests, IReadOnlyList <GatewayInstance> instances) { ResourceRequests = resourceRequests; Instances = instances; }