Class MongoJackInstantDeserializer

  • All Implemented Interfaces:
    com.fasterxml.jackson.databind.deser.ContextualDeserializer, com.fasterxml.jackson.databind.deser.NullValueProvider, com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable, Serializable

    public class MongoJackInstantDeserializer
    extends com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<Instant>
    Patched Instant deserializer. Works with bson4jackson-deserialized ISODate() fields
    Author:
    Mikhail Surin
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer

        com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.FromDecimalArguments, com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer.FromIntegerArguments
      • Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer

        com.fasterxml.jackson.databind.JsonDeserializer.None
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean _isLenient  
      • Fields inherited from class com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer

        _adjustToContextTZOverride, _alwaysAllowStringifiedDateTimestamps, _normalizeZoneId, _readTimestampsAsNanosOverride, adjust, fromMilliseconds, fromNanoseconds, INSTANT, ISO8601_COLONLESS_OFFSET_REGEX, OFFSET_DATE_TIME, parsedToValue, replaceZeroOffsetAsZ, ZONED_DATE_TIME
      • Fields inherited from class com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase

        _formatter, _shape
      • Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer

        _valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected T _failForNotLenient​(com.fasterxml.jackson.core.JsonParser arg0, com.fasterxml.jackson.databind.DeserializationContext arg1, com.fasterxml.jackson.core.JsonToken arg2)  
      protected T _fromEmptyString​(com.fasterxml.jackson.core.JsonParser arg0, com.fasterxml.jackson.databind.DeserializationContext arg1, String arg2)  
      protected <R extends Object>
      R
      _handleDateTimeException​(com.fasterxml.jackson.databind.DeserializationContext arg0, DateTimeException arg1, String arg2)  
      protected <R extends Object>
      R
      _handleUnexpectedToken​(com.fasterxml.jackson.databind.DeserializationContext arg0, com.fasterxml.jackson.core.JsonParser arg1, com.fasterxml.jackson.core.JsonToken... arg2)  
      protected <R extends Object>
      R
      _handleUnexpectedToken​(com.fasterxml.jackson.databind.DeserializationContext arg0, com.fasterxml.jackson.core.JsonParser arg1, String arg2, Object... arg3)  
      protected boolean _isValidTimestampString​(String arg0)  
      protected DateTimeException _peelDTE​(DateTimeException arg0)  
      protected <BOGUS extends Object>
      BOGUS
      _reportWrongToken​(com.fasterxml.jackson.core.JsonParser arg0, com.fasterxml.jackson.databind.DeserializationContext arg1, com.fasterxml.jackson.core.JsonToken... arg2)  
      protected <BOGUS extends Object>
      BOGUS
      _reportWrongToken​(com.fasterxml.jackson.databind.DeserializationContext arg0, com.fasterxml.jackson.core.JsonToken arg1, String arg2)  
      Instant deserialize​(com.fasterxml.jackson.core.JsonParser parser, com.fasterxml.jackson.databind.DeserializationContext context)  
      Object deserializeWithType​(com.fasterxml.jackson.core.JsonParser arg0, com.fasterxml.jackson.databind.DeserializationContext arg1, com.fasterxml.jackson.databind.jsontype.TypeDeserializer arg2)  
      protected boolean isLenient()  
      com.fasterxml.jackson.databind.type.LogicalType logicalType()  
      • Methods inherited from class com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer

        _countPeriods, _fromDecimal, _fromLong, _fromString, _withFormatOverrides, shouldAdjustToContextTimezone, shouldReadTimestampsAsNanoseconds, withDateFormat, withFeatures, withLeniency
      • Methods inherited from class com.fasterxml.jackson.datatype.jsr310.deser.JSR310DateTimeDeserializerBase

        _throwNoNumericTimestampNeedTimeZone, createContextual, withShape
      • Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer

        deserialize, getEmptyAccessPattern, getNullAccessPattern, supportsUpdate
      • Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer

        _byteOverflow, _checkBooleanToStringCoercion, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFloatToStringCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkIntToFloatCoercion, _checkIntToStringCoercion, _checkTextualNull, _checkToStringCoercion, _coerceBooleanFromInt, _coercedTypeDesc, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromArray, _deserializeFromEmpty, _deserializeFromEmptyString, _deserializeFromString, _deserializeWrappedValue, _failDoubleToIntCoercion, _findCoercionFromBlankString, _findCoercionFromEmptyArray, _findCoercionFromEmptyString, _findNullProvider, _hasTextualNull, _intOverflow, _isBlank, _isEmptyOrTextualNull, _isFalse, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _isTrue, _neitherNull, _nonNullNumber, _parseBoolean, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDouble, _parseDouble, _parseDoublePrimitive, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleNestedArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
      • Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer

        deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullValue, getNullValue, getObjectIdReader, isCachable, replaceDelegatee, unwrappingDeserializer
    • Field Detail

      • _isLenient

        protected final boolean _isLenient
    • Constructor Detail

      • MongoJackInstantDeserializer

        public MongoJackInstantDeserializer()
    • Method Detail

      • deserialize

        public Instant deserialize​(com.fasterxml.jackson.core.JsonParser parser,
                                   com.fasterxml.jackson.databind.DeserializationContext context)
                            throws IOException
        Overrides:
        deserialize in class com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer<Instant>
        Throws:
        IOException
      • isLenient

        protected boolean isLenient()
      • _fromEmptyString

        protected T _fromEmptyString​(com.fasterxml.jackson.core.JsonParser arg0,
                                     com.fasterxml.jackson.databind.DeserializationContext arg1,
                                     String arg2)
                              throws IOException
        Throws:
        IOException
      • logicalType

        public com.fasterxml.jackson.databind.type.LogicalType logicalType()
        Overrides:
        logicalType in class com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T extends Object>
      • deserializeWithType

        public Object deserializeWithType​(com.fasterxml.jackson.core.JsonParser arg0,
                                          com.fasterxml.jackson.databind.DeserializationContext arg1,
                                          com.fasterxml.jackson.databind.jsontype.TypeDeserializer arg2)
                                   throws IOException
        Overrides:
        deserializeWithType in class com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T extends Object>
        Throws:
        IOException
      • _isValidTimestampString

        protected boolean _isValidTimestampString​(String arg0)
      • _reportWrongToken

        protected <BOGUS extends Object> BOGUS _reportWrongToken​(com.fasterxml.jackson.databind.DeserializationContext arg0,
                                                                 com.fasterxml.jackson.core.JsonToken arg1,
                                                                 String arg2)
                                                          throws IOException
        Throws:
        IOException
      • _reportWrongToken

        protected <BOGUS extends Object> BOGUS _reportWrongToken​(com.fasterxml.jackson.core.JsonParser arg0,
                                                                 com.fasterxml.jackson.databind.DeserializationContext arg1,
                                                                 com.fasterxml.jackson.core.JsonToken... arg2)
                                                          throws IOException
        Throws:
        IOException
      • _handleDateTimeException

        protected <R extends Object> R _handleDateTimeException​(com.fasterxml.jackson.databind.DeserializationContext arg0,
                                                                DateTimeException arg1,
                                                                String arg2)
                                                         throws com.fasterxml.jackson.databind.JsonMappingException
        Throws:
        com.fasterxml.jackson.databind.JsonMappingException
      • _handleUnexpectedToken

        protected <R extends Object> R _handleUnexpectedToken​(com.fasterxml.jackson.databind.DeserializationContext arg0,
                                                              com.fasterxml.jackson.core.JsonParser arg1,
                                                              String arg2,
                                                              Object... arg3)
                                                       throws com.fasterxml.jackson.databind.JsonMappingException
        Throws:
        com.fasterxml.jackson.databind.JsonMappingException
      • _handleUnexpectedToken

        protected <R extends Object> R _handleUnexpectedToken​(com.fasterxml.jackson.databind.DeserializationContext arg0,
                                                              com.fasterxml.jackson.core.JsonParser arg1,
                                                              com.fasterxml.jackson.core.JsonToken... arg2)
                                                       throws com.fasterxml.jackson.databind.JsonMappingException
        Throws:
        com.fasterxml.jackson.databind.JsonMappingException
      • _failForNotLenient

        protected T _failForNotLenient​(com.fasterxml.jackson.core.JsonParser arg0,
                                       com.fasterxml.jackson.databind.DeserializationContext arg1,
                                       com.fasterxml.jackson.core.JsonToken arg2)
                                throws IOException
        Throws:
        IOException