Module: Feedjira::DateTimeUtilities
- Included in:
- FeedEntryUtilities
- Defined in:
- lib/feedjira/date_time_utilities.rb,
lib/feedjira/date_time_utilities/date_time_epoch_parser.rb,
lib/feedjira/date_time_utilities/date_time_pattern_parser.rb,
lib/feedjira/date_time_utilities/date_time_language_parser.rb
Defined Under Namespace
Classes: DateTimeEpochParser, DateTimeLanguageParser, DateTimePatternParser
Constant Summary collapse
- DATE_PARSERS =
This is our date parsing heuristic. Date Parsers are attempted in order.
[ DateTimePatternParser, DateTimeLanguageParser, DateTimeEpochParser, DateTime ].freeze
Instance Method Summary collapse
-
#parse_datetime(string) ⇒ Object
Parse the given string starting with the most common parser (default ruby) and going over all other available parsers rubocop:disable Metrics/MethodLength.
Instance Method Details
#parse_datetime(string) ⇒ Object
Parse the given string starting with the most common parser (default ruby) and going over all other available parsers rubocop:disable Metrics/MethodLength
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/feedjira/date_time_utilities.rb', line 16 def parse_datetime(string) res = DATE_PARSERS.find do |parser| begin return parser.parse(string).feed_utils_to_gm_time rescue StandardError => e Feedjira.logger.debug { "Failed to parse date #{string}" } Feedjira.logger.debug(e) nil end end Feedjira.logger.warn { "Failed to parse date #{string}" } if res.nil? res end |