Class JodaConvert

java.lang.Object
org.jibx.runtime.JodaConvert

public abstract class JodaConvert extends Object
Utility class supplying static methods for Joda date/time conversions. The actual serializer/deserializer methods are all public so that they'll be included in JavaDocs; support methods are protected, so that they'll be exposed for user classes extending this class.
Author:
Dennis M. Sosnoski
  • Constructor Details

    • JodaConvert

      public JodaConvert()
  • Method Details

    • deserializeLocalDate

      public static LocalDate deserializeLocalDate(String text) throws JiBXException
      Deserialize date value from text as local date without time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign and trailing time zone (with the time zone ignored in this case). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • serializeLocalDate

      public static String serializeLocalDate(LocalDate date)
      Serialize local date value to general date text without time zone. Date/time values are formatted in W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign included if necessary.
      Parameters:
      date - date to be converted
      Returns:
      converted date text
    • deserializeDateMidnight

      protected static DateMidnight deserializeDateMidnight(String text, DateTimeZone zone) throws JiBXException
      Deserialize date value as a midnight date in the specified time zone.
      Parameters:
      text -
      zone -
      Returns:
      date
      Throws:
      JiBXException
    • findZone

      protected static DateTimeZone findZone(String text, DateTimeZone dflt) throws JiBXException
      Find the date/time zone for an xs:date or xs:dateTime text representation.
      Parameters:
      text - xs:date or xs:dateTime value
      dflt - default zone to be returned if no zone specified
      Returns:
      zone
      Throws:
      JiBXException
    • deserializeZonedDateMidnight

      public static DateMidnight deserializeZonedDateMidnight(String text) throws JiBXException
      Deserialize date value from text as midnight date in specified (or default) time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign and trailing time zone. If the time zone indication is included a zone matching the offset is used for the date; otherwise the default time zone is used. This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeLocalDateMidnight

      public static DateMidnight deserializeLocalDateMidnight(String text) throws JiBXException
      Deserialize date value from text as midnight date in default (local) time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign and trailing time zone (with the time zone ignored in this case). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeUTCDateMidnight

      public static DateMidnight deserializeUTCDateMidnight(String text) throws JiBXException
      Deserialize date value from text as midnight date in UTC time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign and trailing time zone (with the time zone ignored in this case). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • serializeUnzonedDateMidnight

      public static String serializeUnzonedDateMidnight(DateMidnight date)
      Serialize midnight date value to general date text without time zone. Date values are formatted in W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign included if necessary.
      Parameters:
      date - date to be converted
      Returns:
      converted date text
    • serializeZonedDateMidnight

      public static String serializeZonedDateMidnight(DateMidnight date)
      Serialize midnight date value to general date text with time zone offset. Date values are formatted in W3C XML Schema standard format as CCYY-MM-DD, with optional leading sign included if necessary and trailing time zone offset.
      Parameters:
      date - date to be converted
      Returns:
      converted date text
    • serializeUTCDateMidnight

      public static String serializeUTCDateMidnight(DateMidnight date)
      Serialize midnight date value to general date text with UTC time zone. Date values are formatted in W3C XML Schema standard format as CCYY-MM-DDZ, with optional leading sign included if necessary.
      Parameters:
      date - date to be converted
      Returns:
      converted date text
    • deserializeLocalTime

      public static LocalTime deserializeLocalTime(String text) throws JiBXException
      Deserialize time value from text as local time. Time values are expected to match W3C XML Schema standard format as hh:mm:ss.fff, with optional trailing time zone (with the time zone ignored in this case). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • serializeUnzonedLocalTime

      public static String serializeUnzonedLocalTime(LocalTime time)
      Serialize local time value to general date text without time zone. Time values are formatted in W3C XML Schema standard format as hh:mm:ss.fff.
      Parameters:
      time - time to be converted
      Returns:
      converted time text
    • serializeUTCLocalTime

      public static String serializeUTCLocalTime(LocalTime time)
      Serialize local time value to general date text with UTC time zone. Time values are formatted in W3C XML Schema standard format as hh:mm:ss.fffZ, with optional leading sign included if necessary.
      Parameters:
      time - time to be converted
      Returns:
      converted time text
    • parseDateTime

      protected static DateTime parseDateTime(String text, boolean full, DateTimeZone zone) throws JiBXException
      Parse date/time value from text. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign and trailing time zone (with the time zone used to convert the value to the target time zone). If the time zone is absent and not required the target time zone is assumed.
      Parameters:
      text -
      full - zoned time required flag (exception thrown if missing)
      zone - time zone used for returned date/time
      Returns:
      converted date/time
      Throws:
      JiBXException
    • deserializeZonedDateTime

      public static DateTime deserializeZonedDateTime(String text) throws JiBXException
      Deserialize date/time value from text in specified (or default) time zone. Date/time values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign and trailing time zone. If the time zone indication is included a zone matching the offset is used for the date; otherwise the default time zone is used. This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeUTCDateTime

      public static DateTime deserializeUTCDateTime(String text) throws JiBXException
      Deserialize UTC date/time value from text into the UTC time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign and trailing time zone (with the time zone used to convert the value to UTC, and UTC assumed if no time zone is specified). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeLocalDateTime

      public static DateTime deserializeLocalDateTime(String text) throws JiBXException
      Deserialize date/time value from text into the local (default) time zone. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign and trailing time zone (with the time zone used to convert the value to the local time zone, and the local time zone assumed if no time zone is specified). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeStrictUTCDateTime

      public static DateTime deserializeStrictUTCDateTime(String text) throws JiBXException
      Deserialize UTC date/time value from text with time zone required. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign but required trailing time zone (with the time zone used to convert the value to UTC). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • deserializeStrictLocalDateTime

      public static DateTime deserializeStrictLocalDateTime(String text) throws JiBXException
      Deserialize local (default zone) date/time value from text with time zone required. Date values are expected to match W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign but required trailing time zone (with the time zone used to convert the value to the local time zone). This method follows standard JiBX deserializer usage requirements by accepting a null input.
      Parameters:
      text - text to be parsed (may be null)
      Returns:
      converted date, or null if passed null input
      Throws:
      JiBXException - on parse error
    • serializeZonedDateTime

      public static String serializeZonedDateTime(DateTime time)
      Serialize date/time to general dateTime text. Date/time values are formatted in W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign included if necessary. Time zone information is always included in the output, with the value determined by the zone used for the date/time.
      Parameters:
      time - date/time to be converted
      Returns:
      converted date/time text
    • serializeUTCDateTime

      public static String serializeUTCDateTime(DateTime time)
      Serialize date/time to general dateTime text. Date/time values are formatted in W3C XML Schema standard format as CCYY-MM-DDThh:mm:ss.fff, with optional leading sign included if necessary. Time zone information is always included in the output, as 'Z' to indicate UTC.
      Parameters:
      time - date/time to be converted
      Returns:
      converted date/time text