internal static SimpleNormalizationApiDataType ParseFromJObject(object obj)
        {
            dynamic prop = obj;
            var     type = new SimpleNormalizationApiDataType(prop);

            type.TryParseTypeFromJObject(obj);
            type.TryParseEnumFromJObject(obj);

            if (prop.ContainsKey("defaultValue"))
            {
                type.DefaultValue = (string)prop.defaultValue;
            }
            if (prop.ContainsKey("minimum"))
            {
                type.MinimumValue = prop.minimum.ToString();
            }
            if (prop.ContainsKey("maximum"))
            {
                type.MaximumValue = prop.maximum.ToString();
            }
            if (prop.ContainsKey("nullable"))
            {
                type.IsNullable = (bool)prop.nullable;
            }

            if (string.IsNullOrWhiteSpace(type.TypeName))
            {
                type.TypeName = "object";
            }

            return(type);
        }
        internal static SimpleNormalizationApiDataType ParseFromJObject(object obj)
        {
            dynamic prop = obj;
            var type = new SimpleNormalizationApiDataType(prop);

            type.TryParseTypeFromJObject(obj);
            type.TryParseEnumFromJObject(obj);

            if (prop.ContainsKey("defaultValue"))
            {
                type.DefaultValue = (string) prop.defaultValue;
            }
            if (prop.ContainsKey("minimum"))
            {
                type.MinimumValue = (string) prop.minimum;
            }
            if (prop.ContainsKey("maximum"))
            {
                type.MaximumValue = (string) prop.maximum;
            }
            if (prop.ContainsKey("nullable"))
            {
                type.IsNullable = (bool) prop.nullable;
            }

            if (string.IsNullOrWhiteSpace(type.TypeName))
            {
                type.TypeName = "object";
            }

            return type;
        }
Exemplo n.º 3
0
        private NormalizationApiModelEnum ParseEnumData(dynamic item)
        {
            var apiVersion = (string) item.ApiVersion;
            var resourceName = (string) item.ResourceName;
            var resourcePath = (string) item.ResourcePath;
            dynamic model = item.Model;

            var normEnum = new NormalizationApiModelEnum
            {
                ApiVersion = apiVersion,
                Name = (string) model.id,
                ResourceName = resourceName,
                ResourcePath = resourcePath
            };

            if (model.ContainsKey("description") && !string.IsNullOrWhiteSpace((string) model.description))
            {
                normEnum.Description = (string) model.description;
            }

            var type = new SimpleNormalizationApiDataType(model);
            type.TryParseEnumFromJObject(model);

            var values = type.EnumValues;
            if (values.Any()) normEnum.Values.AddRange(values);

            return normEnum;
        }