示例#1
0
        public static int GetYear(IReadOnlyList <string> line, List <string> headers)
        {
            var tp = CsvUtil.Value(line, headers, "time_period");

            if (tp == null)
            {
                throw new InvalidTimePeriodException(null);
            }

            return(int.Parse(tp.Substring(0, 4)));
        }
示例#2
0
        public static TimeIdentifier GetTimeIdentifier(IReadOnlyList <string> line, List <string> headers)
        {
            var timeIdentifier = CsvUtil.Value(line, headers, "time_identifier").ToLower();

            foreach (var value in Enum.GetValues(typeof(TimeIdentifier)).Cast <TimeIdentifier>())
            {
                if (value.GetEnumLabel().Equals(timeIdentifier, StringComparison.InvariantCultureIgnoreCase))
                {
                    return(value);
                }
            }

            throw new InvalidTimeIdentifierException(timeIdentifier);
        }
示例#3
0
 public static GeographicLevel GetGeographicLevel(IReadOnlyList <string> line, List <string> headers)
 {
     return(GetGeographicLevelFromString(CsvUtil.Value(line, headers, "geographic_level")));
 }