Class DateBasedDeserializer<T>

All Implemented Interfaces:
NullValueProvider, ValueInstantiator.Gettable
Direct Known Subclasses:
JavaSqlDateDeserializer, JavaSqlTimestampDeserializer, JavaUtilCalendarDeserializer, JavaUtilDateDeserializer

public abstract class DateBasedDeserializer<T> extends StdScalarDeserializer<T>
  • Field Details

    • _customFormat

      protected final DateFormat _customFormat
      Specific format to use, if non-null; if null will just use default format.
    • _formatString

      protected final String _formatString
      Let's also keep format String for reference, to use for error messages
  • Constructor Details

  • Method Details

    • withDateFormat

      protected abstract DateBasedDeserializer<T> withDateFormat(DateFormat df, String formatStr)
    • logicalType

      public LogicalType logicalType()
      Description copied from class: ValueDeserializer
      Method for accessing logical type of values this deserializer produces. Typically used for further configuring handling of values, for example, to find which coercions are legal.
      Overrides:
      logicalType in class StdScalarDeserializer<T>
      Returns:
      Logical type of values this deserializer produces, if known; null if not
    • createContextual

      public ValueDeserializer<?> createContextual(DeserializationContext ctxt, BeanProperty property)
      Description copied from class: ValueDeserializer
      Method called to see if a different (or differently configured) deserializer is needed to deserialize values of specified property. Note that instance that this method is called on is typically shared one and as a result method should NOT modify this instance but rather construct and return a new instance. This instance should only be returned as-is, in case it is already suitable for use.
      Overrides:
      createContextual in class ValueDeserializer<T>
      Parameters:
      ctxt - Deserialization context to access configuration, additional deserializers that may be needed by this deserializer
      property - Method, field or constructor parameter that represents the property (and is used to assign deserialized value). Should be available; but there may be cases where caller cannot provide it and null is passed instead (in which case impls usually pass 'this' deserializer as is)
      Returns:
      Deserializer to use for deserializing values of specified property; may be this instance or a new instance.
    • _parseDate

      protected Date _parseDate(JsonParser p, DeserializationContext ctxt) throws JacksonException
      Overrides:
      _parseDate in class StdDeserializer<T>
      Throws:
      JacksonException