Ejemplo n.º 1
0
 internal EnvironmentVersionProperties(string description, IDictionary <string, string> properties, IDictionary <string, string> tags, bool?isAnonymous, bool?isArchived, BuildContext build, string condaFile, EnvironmentType?environmentType, string image, InferenceContainerProperties inferenceConfig, OperatingSystemType?osType) : base(description, properties, tags, isAnonymous, isArchived)
 {
     Build           = build;
     CondaFile       = condaFile;
     EnvironmentType = environmentType;
     Image           = image;
     InferenceConfig = inferenceConfig;
     OSType          = osType;
 }
Ejemplo n.º 2
0
        internal static EnvironmentVersionProperties DeserializeEnvironmentVersionProperties(JsonElement element)
        {
            Optional <BuildContext>    build           = default;
            Optional <string>          condaFile       = default;
            Optional <EnvironmentType> environmentType = default;
            Optional <string>          image           = default;
            Optional <InferenceContainerProperties> inferenceConfig = default;
            Optional <OperatingSystemType>          osType          = default;
            Optional <bool>   isAnonymous = default;
            Optional <bool>   isArchived  = default;
            Optional <string> description = default;
            Optional <IDictionary <string, string> > properties = default;
            Optional <IDictionary <string, string> > tags       = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("build"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    build = BuildContext.DeserializeBuildContext(property.Value);
                    continue;
                }
                if (property.NameEquals("condaFile"))
                {
                    condaFile = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("environmentType"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    environmentType = new EnvironmentType(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("image"))
                {
                    image = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("inferenceConfig"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    inferenceConfig = InferenceContainerProperties.DeserializeInferenceContainerProperties(property.Value);
                    continue;
                }
                if (property.NameEquals("osType"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    osType = new OperatingSystemType(property.Value.GetString());
                    continue;
                }
                if (property.NameEquals("isAnonymous"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    isAnonymous = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("isArchived"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        property.ThrowNonNullablePropertyIsNull();
                        continue;
                    }
                    isArchived = property.Value.GetBoolean();
                    continue;
                }
                if (property.NameEquals("description"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        description = null;
                        continue;
                    }
                    description = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("properties"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        properties = null;
                        continue;
                    }
                    Dictionary <string, string> dictionary = new Dictionary <string, string>();
                    foreach (var property0 in property.Value.EnumerateObject())
                    {
                        if (property0.Value.ValueKind == JsonValueKind.Null)
                        {
                            dictionary.Add(property0.Name, null);
                        }
                        else
                        {
                            dictionary.Add(property0.Name, property0.Value.GetString());
                        }
                    }
                    properties = dictionary;
                    continue;
                }
                if (property.NameEquals("tags"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        tags = null;
                        continue;
                    }
                    Dictionary <string, string> dictionary = new Dictionary <string, string>();
                    foreach (var property0 in property.Value.EnumerateObject())
                    {
                        if (property0.Value.ValueKind == JsonValueKind.Null)
                        {
                            dictionary.Add(property0.Name, null);
                        }
                        else
                        {
                            dictionary.Add(property0.Name, property0.Value.GetString());
                        }
                    }
                    tags = dictionary;
                    continue;
                }
            }
            return(new EnvironmentVersionProperties(description.Value, Optional.ToDictionary(properties), Optional.ToDictionary(tags), Optional.ToNullable(isAnonymous), Optional.ToNullable(isArchived), build.Value, condaFile.Value, Optional.ToNullable(environmentType), image.Value, inferenceConfig.Value, Optional.ToNullable(osType)));
        }