Class AbstractDateDeserializer<T>

java.lang.Object
org.eclipse.yasson.internal.deserializer.types.TypeDeserializer
org.eclipse.yasson.internal.deserializer.types.AbstractDateDeserializer<T>
All Implemented Interfaces:
ModelDeserializer<String>
Direct Known Subclasses:
CalendarDeserializer, DateDeserializer, InstantDeserializer, LocalDateDeserializer, LocalDateTimeDeserializer, LocalTimeDeserializer, MonthDayTypeDeserializer, OffsetDateTimeDeserializer, OffsetTimeDeserializer, SqlDateDeserializer, SqlTimestampDeserializer, XmlGregorianCalendarDeserializer, YearMonthTypeDeserializer, ZonedDateTimeDeserializer

abstract class AbstractDateDeserializer<T> extends TypeDeserializer
Base deserializer for all the date related types.
  • Field Details

  • Constructor Details

  • Method Details

    • actualDeserializer

      private ModelDeserializer<String> actualDeserializer(JsonbConfigProperties properties, Customization customization)
    • getJsonbDateFormatter

      private JsonbDateFormatter getJsonbDateFormatter(JsonbConfigProperties properties, Customization customization)
    • deserializeStringValue

      public Object deserializeStringValue(String value, DeserializationContextImpl context, Type rType)
      Specified by:
      deserializeStringValue in class TypeDeserializer
    • fromInstant

      abstract T fromInstant(Instant instant)
      Construct date object from an instant containing epoch millisecond. If date object supports zone offset / zone id, system default is used and warning is logged.
      Parameters:
      instant - instant to construct from
      Returns:
      date object
    • parseDefault

      abstract T parseDefault(String jsonValue, Locale locale)
      Parse java.time date object with default formatter. Different default formatter for each date object type is used.
      Parameters:
      jsonValue - string value to parse from
      locale - annotated locale or default
      Returns:
      parsed date object
    • parseWithFormatter

      abstract T parseWithFormatter(String jsonValue, DateTimeFormatter formatter)
      Parse java.time date object with provided formatter.
      Parameters:
      jsonValue - string value to parse from
      formatter - a formatter to use
      Returns:
      parsed date object
    • parseWithFormatterInternal

      private T parseWithFormatterInternal(String jsonValue, DateTimeFormatter formatter)
    • getZonedFormatter

      protected DateTimeFormatter getZonedFormatter(DateTimeFormatter formatter)