예제 #1
0
        internal static DeploymentStatus DeserializeDeploymentStatus(JsonElement element)
        {
            DeploymentState deploymentState                = default;
            Optional <int>  totalDevices                   = default;
            Optional <int>  devicesIncompatibleCount       = default;
            Optional <int>  devicesInProgressCount         = default;
            Optional <int>  devicesCompletedFailedCount    = default;
            Optional <int>  devicesCompletedSucceededCount = default;
            Optional <int>  devicesCanceledCount           = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("deploymentState"))
                {
                    deploymentState = new DeploymentState(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("totalDevices"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    totalDevices = property.Value.GetInt32();
                    continue;
                }
                if (property.NameEquals("devicesIncompatibleCount"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    devicesIncompatibleCount = property.Value.GetInt32();
                    continue;
                }
                if (property.NameEquals("devicesInProgressCount"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    devicesInProgressCount = property.Value.GetInt32();
                    continue;
                }
                if (property.NameEquals("devicesCompletedFailedCount"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    devicesCompletedFailedCount = property.Value.GetInt32();
                    continue;
                }
                if (property.NameEquals("devicesCompletedSucceededCount"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    devicesCompletedSucceededCount = property.Value.GetInt32();
                    continue;
                }
                if (property.NameEquals("devicesCanceledCount"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    devicesCanceledCount = property.Value.GetInt32();
                    continue;
                }
            }
            return(new DeploymentStatus(deploymentState, Optional.ToNullable(totalDevices), Optional.ToNullable(devicesIncompatibleCount), Optional.ToNullable(devicesInProgressCount), Optional.ToNullable(devicesCompletedFailedCount), Optional.ToNullable(devicesCompletedSucceededCount), Optional.ToNullable(devicesCanceledCount)));
        }
 public static DeploymentStatus DeploymentStatus(DeploymentState deploymentState = default, int?totalDevices = null, int?devicesIncompatibleCount = null, int?devicesInProgressCount = null, int?devicesCompletedFailedCount = null, int?devicesCompletedSucceededCount = null, int?devicesCanceledCount = null)
 {
     return(new DeploymentStatus(deploymentState, totalDevices, devicesIncompatibleCount, devicesInProgressCount, devicesCompletedFailedCount, devicesCompletedSucceededCount, devicesCanceledCount));
 }