Ejemplo n.º 1
0
        public static DateTimeParsers GetParser(string source)
        {
            var             parser     = SanitizeSourceName(source);
            DateTimeParsers parserEnum = DateTimeParsers.Date;

            if (Enum.TryParse(parser, out parserEnum))
            {
                return(parserEnum);
            }

            throw new Exception($"Parser '{parser}' not supported");
        }
Ejemplo n.º 2
0
        public static IDateTimeParser GetThaiParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new ThaiCommonDateTimeParserConfiguration(DateTimeOptions.None);

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new ThaiDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedDateTimeParser(new ThaiMergedParserConfiguration(DateTimeOptions.None)));
            }

            throw new Exception($"Parser '{parserName}' for Thai not supported");
        }
Ejemplo n.º 3
0
        public static IDateTimeParser GetEnglishOthersParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new EnglishCommonDateTimeParserConfiguration(new BaseOptionsConfiguration(DateTimeOptions.None, true));

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new EnglishDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Time:
                return(new DateTime.English.TimeParser(new EnglishTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DatePeriod:
                return(new BaseDatePeriodParser(new EnglishDatePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimePeriod:
                return(new BaseTimePeriodParser(new EnglishTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTime:
                return(new BaseDateTimeParser(new EnglishDateTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTimePeriod:
                return(new BaseDateTimePeriodParser(new EnglishDateTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Duration:
                return(new BaseDurationParser(new EnglishDurationParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Holiday:
                return(new BaseHolidayParser(new EnglishHolidayParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimeZone:
                return(new BaseTimeZoneParser());

            case DateTimeParsers.Set:
                return(new BaseSetParser(new EnglishSetParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedDateTimeParser(new EnglishMergedParserConfiguration(new BaseOptionsConfiguration())));
            }

            throw new Exception($"Parser '{parserName}' for English-Others not supported");
        }
        public static IDateTimeParser GetDutchParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new DutchCommonDateTimeParserConfiguration(new BaseOptionsConfiguration(DateTimeOptions.None, dmyDateFormat: true));

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new DutchDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Time:
                return(new DateTime.Dutch.TimeParser(new DutchTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DatePeriod:
                return(new BaseDatePeriodParser(new DutchDatePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimePeriod:
                return(new BaseTimePeriodParser(new DutchTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTime:
                return(new BaseDateTimeParser(new DutchDateTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTimePeriod:
                return(new BaseDateTimePeriodParser(new DutchDateTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Duration:
                return(new BaseDurationParser(new DutchDurationParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Holiday:
                return(new BaseHolidayParser(new DutchHolidayParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimeZone:
                return(new BaseTimeZoneParser());

            case DateTimeParsers.Set:
                return(new BaseSetParser(new DutchSetParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedDateTimeParser(new DutchMergedParserConfiguration(new BaseOptionsConfiguration(DateTimeOptions.None, dmyDateFormat: true))));
            }

            throw new Exception($"Parser '{parserName}' for Dutch not supported");
        }
Ejemplo n.º 5
0
        public static IDateTimeParser GetSpanishParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new SpanishCommonDateTimeParserConfiguration();

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new SpanishDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Time:
                return(new BaseTimeParser(new SpanishTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DatePeriod:
                return(new BaseDatePeriodParser(new SpanishDatePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimePeriod:
                return(new BaseTimePeriodParser(new SpanishTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTime:
                return(new BaseDateTimeParser(new SpanishDateTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTimePeriod:
                return(new BaseDateTimePeriodParser(new SpanishDateTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Duration:
                return(new BaseDurationParser(new SpanishDurationParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Holiday:
                return(new BaseHolidayParser(new SpanishHolidayParserConfiguration()));

            case DateTimeParsers.Set:
                return(new BaseSetParser(new SpanishSetParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedParser(new SpanishMergedParserConfiguration(), DateTimeOptions.None));
            }

            throw new Exception($"Parser '{parserName}' for Spanish not supported");
        }
Ejemplo n.º 6
0
        public static IDateTimeParser GetItalianParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new ItalianCommonDateTimeParserConfiguration(new BaseOptionsConfiguration());

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new ItalianDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Time:
                return(new DateTime.Italian.TimeParser(new ItalianTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DatePeriod:
                return(new BaseDatePeriodParser(new ItalianDatePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimePeriod:
                return(new BaseTimePeriodParser(new ItalianTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTime:
                return(new BaseDateTimeParser(new ItalianDateTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTimePeriod:
                return(new BaseDateTimePeriodParser(new ItalianDateTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Duration:
                return(new BaseDurationParser(new ItalianDurationParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Holiday:
                return(new BaseHolidayParser(new ItalianHolidayParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Set:
                return(new BaseSetParser(new ItalianSetParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedDateTimeParser(new ItalianMergedParserConfiguration(commonConfiguration)));
            }

            throw new Exception($"Parser '{parserName}' for Italian not supported");
        }
Ejemplo n.º 7
0
        public static IDateTimeParser GetPortugueseParser(DateTimeParsers parserName)
        {
            var commonConfiguration = new PortugueseCommonDateTimeParserConfiguration(DateTimeOptions.None);

            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new BaseDateParser(new PortugueseDateParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Time:
                return(new BaseTimeParser(new PortugueseTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DatePeriod:
                return(new BaseDatePeriodParser(new PortugueseDatePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.TimePeriod:
                return(new BaseTimePeriodParser(new PortugueseTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTime:
                return(new BaseDateTimeParser(new PortugueseDateTimeParserConfiguration(commonConfiguration)));

            case DateTimeParsers.DateTimePeriod:
                return(new DateTime.Portuguese.DateTimePeriodParser(new PortugueseDateTimePeriodParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Duration:
                return(new BaseDurationParser(new PortugueseDurationParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Holiday:
                return(new BaseHolidayParser(new PortugueseHolidayParserConfiguration()));

            case DateTimeParsers.Set:
                return(new BaseSetParser(new PortugueseSetParserConfiguration(commonConfiguration)));

            case DateTimeParsers.Merged:
                return(new BaseMergedDateTimeParser(new PortugueseMergedParserConfiguration(DateTimeOptions.None)));
            }

            throw new Exception($"Parser '{parserName}' for Portuguese not supported");
        }
Ejemplo n.º 8
0
        public static IDateTimeParser GetChineseParser(DateTimeParsers parserName)
        {
            //var commonConfiguration = new EnglishCommonDateTimeParserConfiguration();
            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new DateTime.Chinese.DateParser(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.Time:
                return(new DateTime.Chinese.TimeParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.DatePeriod:
                return(new DateTime.Chinese.DatePeriodParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.TimePeriod:
                return(new DateTime.Chinese.TimePeriodParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.DateTime:
                return(new DateTime.Chinese.DateTimeParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.DateTimePeriod:
                return(new DateTime.Chinese.DateTimePeriodParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.Duration:
                return(new DateTime.Chinese.DurationParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.Holiday:
                return(new DateTime.Chinese.HolidayParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.Set:
                return(new DateTime.Chinese.SetParserChs(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));

            case DateTimeParsers.Merged:
                return(new FullDateTimeParser(new DateTime.Chinese.ChineseDateTimeParserConfiguration()));
            }

            throw new Exception($"Parser '{parserName}' for English not supported");
        }
        public static IDateTimeParser GetJapaneseParser(DateTimeParsers parserName)
        {
            switch (parserName)
            {
            case DateTimeParsers.Date:
                return(new DateTime.Japanese.JapaneseDateParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.Time:
                return(new DateTime.Japanese.JapaneseTimeParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.DatePeriod:
                return(new DateTime.Japanese.JapaneseDatePeriodParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.TimePeriod:
                return(new DateTime.Japanese.JapaneseTimePeriodParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.DateTime:
                return(new DateTime.Japanese.JapaneseDateTimeParser(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.DateTimePeriod:
                return(new DateTime.Japanese.JapaneseDateTimePeriodParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.Duration:
                return(new DateTime.Japanese.JapaneseDurationParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.Holiday:
                return(new DateTime.Japanese.JapaneseHolidayParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.Set:
                return(new DateTime.Japanese.JapaneseSetParserConfiguration(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));

            case DateTimeParsers.Merged:
                return(new FullDateTimeParser(new DateTime.Japanese.JapaneseDateTimeParserConfiguration()));
            }

            throw new Exception($"Parser '{parserName}' for Japanese not supported");
        }