public IApiResource Parse(DataTypeConfig dataType, JObject json)
        {
            var columnDescriptions = FindProperty(PropertyNames.ColumnDescription, json);
            var data = FindProperty(PropertyNames.Data, json);

            if (data.Count() == 0)
            {
                return(EmptyResource.GetInstance());
            }
            else
            {
                var descriptions = ColumnDescriptionParser.Parse(columnDescriptions.ToList());
                var properties   = ParseProperties(data.Children().First());
                switch (dataType)
                {
                case DataTypeConfig.Company:
                    return(ParseCompany(properties, descriptions));

                case DataTypeConfig.Quarter:
                    return(ParseQuarter(properties, descriptions));

                case DataTypeConfig.Daily:
                    return(ParseDaily(properties, descriptions));

                default:
                    throw new NotSupportedDataTypeException($"Parse {dataType} is not supported at V3");
                }
            }
        }
Beispiel #2
0
        public IApiResource Parse(DataTypeConfig dataType, JObject json)
        {
            var columnDescriptions = FindColumnDescriptions(json);
            var data = FindDataBody(json);

            if (data.Count() == 0)
            {
                return(EmptyResource.GetInstance());
            }
            switch (dataType)
            {
            case DataTypeConfig.Quarter:
                return(ParseQuarter(columnDescriptions, data));

            case DataTypeConfig.Indicator:
                return(ParseIndicator(columnDescriptions, data));

            case DataTypeConfig.Company:
                return(ParseCompany(columnDescriptions, data));

            default:
                throw new NotSupportedDataTypeException($"Parse {dataType} is not supported at V2");
            }
        }
        public void ParseEmpty()
        {
            var json = new JObject();

            Assert.AreEqual(parser.Parse(DataTypeConfig.Quarter, json), EmptyResource.GetInstance());
        }