Class CalendarParser

java.lang.Object
com.google.refine.expr.util.CalendarParser

public class CalendarParser extends Object
A parser for arbitrary date/time strings.
  • Field Details

    • YEAR_BEFORE_MONTH

      public static final int YEAR_BEFORE_MONTH
      bit indicating that the year comes before the month.
      See Also:
    • YEAR_BEFORE_DAY

      public static final int YEAR_BEFORE_DAY
      bit indicating that the year comes before the day.
      See Also:
    • MONTH_BEFORE_DAY

      public static final int MONTH_BEFORE_DAY
      bit indicating that the month comes before the day.
      See Also:
    • YEAR_AFTER_MONTH

      public static final int YEAR_AFTER_MONTH
      bit indicating that the year comes after the month.
      See Also:
    • YEAR_AFTER_DAY

      public static final int YEAR_AFTER_DAY
      bit indicating that the year comes after the day.
      See Also:
    • MONTH_AFTER_DAY

      public static final int MONTH_AFTER_DAY
      bit indicating that the month comes after the day.
      See Also:
    • DD_MM_YY

      public static final int DD_MM_YY
      day/month/year order.
      See Also:
    • MM_DD_YY

      public static final int MM_DD_YY
      month/day/year order.
      See Also:
    • MM_YY_DD

      public static final int MM_YY_DD
      month/year/day order.
      See Also:
    • DD_YY_MM

      public static final int DD_YY_MM
      day/year/month order.
      See Also:
    • YY_DD_MM

      public static final int YY_DD_MM
      year/day/month order.
      See Also:
    • YY_MM_DD

      public static final int YY_MM_DD
      year/month/day order.
      See Also:
  • Constructor Details

    • CalendarParser

      public CalendarParser()
  • Method Details

    • getOrderString

      public static final String getOrderString(int order)
      Return a string representation of the order value.
      Parameters:
      order - order
      Returns:
      order string
    • monthNameToNumber

      public static int monthNameToNumber(String str)
      Convert the supplied month name to its numeric representation.
      For example, "January" (or any substring) would return 1 and "December" would return 12.
      Parameters:
      str - month name
      Returns:
      the numeric month, or CalendarParser.UNSET if the supplied string is not a valid month name.
    • parse

      public static final Calendar parse(String dateStr) throws CalendarParserException
      Extract a date from a string, defaulting to YY-MM-DD order for all-numeric strings.
      Parameters:
      dateStr - date string
      Returns:
      parsed date
      Throws:
      CalendarParserException - if there was a problem parsing the string.
    • parseAsOffsetDateTime

      public static final OffsetDateTime parseAsOffsetDateTime(String dateStr) throws CalendarParserException
      Throws:
      CalendarParserException
    • parse

      public static final Calendar parse(String dateStr, int order) throws CalendarParserException
      Extract a date from a string.
      Parameters:
      dateStr - date string
      order - order in which pieces of numeric strings are assigned (should be one of YY_MM_DD, MM_DD_YY, etc.)
      Returns:
      parsed date
      Throws:
      CalendarParserException - if there was a problem parsing the string.
    • parseAsOffsetDateTime

      public static final OffsetDateTime parseAsOffsetDateTime(String dateStr, int order) throws CalendarParserException
      Throws:
      CalendarParserException
    • parse

      public static final Calendar parse(String dateStr, int order, boolean ignoreChanges) throws CalendarParserException
      Extract a date from a string.
      Parameters:
      dateStr - date string
      order - order in which pieces of numeric strings are assigned (should be one of YY_MM_DD, MM_DD_YY, etc.)
      ignoreChanges - if true, ignore date changes such as Feb 31 being changed to Mar 3.
      Returns:
      parsed date
      Throws:
      CalendarParserException - if there was a problem parsing the string.
    • parseAsOffsetDateTime

      public static final OffsetDateTime parseAsOffsetDateTime(String dateStr, int order, boolean ignoreChanges) throws CalendarParserException
      Throws:
      CalendarParserException
    • prettyString

      public static final String prettyString(Calendar cal)
      Return a printable representation of the date.
      Parameters:
      cal - calendar to convert to a string
      Returns:
      a printable string.
    • toString

      public static final String toString(Calendar cal)
      Return a basic representation of the string.
      Parameters:
      cal - calendar to convert to a string
      Returns:
      the basic string.
    • toSQLString

      public static final String toSQLString(Calendar cal)
      Return a string representation of the date suitable for use in an SQL statement.
      Parameters:
      cal - calendar to convert to a string
      Returns:
      the SQL-friendly string.