Class NumberDeserializers.PrimitiveOrWrapperDeserializer<T>
- java.lang.Object
-
- com.fasterxml.jackson.databind.JsonDeserializer<T>
-
- com.fasterxml.jackson.databind.deser.std.StdDeserializer<T>
-
- com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer<T>
-
- com.fasterxml.jackson.databind.deser.std.NumberDeserializers.PrimitiveOrWrapperDeserializer<T>
-
- All Implemented Interfaces:
NullValueProvider
,ValueInstantiator.Gettable
,java.io.Serializable
- Direct Known Subclasses:
NumberDeserializers.BooleanDeserializer
,NumberDeserializers.ByteDeserializer
,NumberDeserializers.CharacterDeserializer
,NumberDeserializers.DoubleDeserializer
,NumberDeserializers.FloatDeserializer
,NumberDeserializers.IntegerDeserializer
,NumberDeserializers.LongDeserializer
,NumberDeserializers.ShortDeserializer
- Enclosing class:
- NumberDeserializers
protected abstract static class NumberDeserializers.PrimitiveOrWrapperDeserializer<T> extends StdScalarDeserializer<T>
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.JsonDeserializer
JsonDeserializer.None
-
-
Field Summary
Fields Modifier and Type Field Description protected T
_emptyValue
protected LogicalType
_logicalType
protected T
_nullValue
protected boolean
_primitive
-
Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
PrimitiveOrWrapperDeserializer(java.lang.Class<T> vc, LogicalType logicalType, T nvl, T empty)
protected
PrimitiveOrWrapperDeserializer(java.lang.Class<T> vc, T nvl, T empty)
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
getEmptyValue(DeserializationContext ctxt)
Method called to determine value to be used for "empty" values (most commonly when deserializing from empty JSON Strings).AccessPattern
getNullAccessPattern()
This method may be called in conjunction with calls toJsonDeserializer.getNullValue(DeserializationContext)
, to check whether it needs to be called just once (static values), or each time empty value is needed.T
getNullValue(DeserializationContext ctxt)
Method that can be called to determine value to be used for representing null values (values deserialized when JSON token isJsonToken.VALUE_NULL
).LogicalType
logicalType()
Method for accessing logical type of values this deserializer produces.-
Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdScalarDeserializer
deserialize, deserializeWithType, getEmptyAccessPattern, supportsUpdate
-
Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdDeserializer
_byteOverflow, _checkCoercionFail, _checkDoubleSpecialValue, _checkFloatSpecialValue, _checkFloatToIntCoercion, _checkFromStringCoercion, _checkFromStringCoercion, _checkTextualNull, _coerceBooleanFromInt, _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, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseInteger, _parseIntPrimitive, _parseIntPrimitive, _parseLong, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueInstantiator, getValueType, getValueType, handledType, handleMissingEndArrayForSingle, handleUnknownProperty, isDefaultDeserializer, isDefaultKeyDeserializer
-
Methods inherited from class com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserializeWithType, findBackReference, getDelegatee, getEmptyValue, getKnownPropertyNames, getNullValue, getObjectIdReader, isCachable, replaceDelegatee, unwrappingDeserializer
-
-
-
-
Field Detail
-
_logicalType
protected final LogicalType _logicalType
-
_nullValue
protected final T _nullValue
-
_emptyValue
protected final T _emptyValue
-
_primitive
protected final boolean _primitive
-
-
Method Detail
-
getNullAccessPattern
public AccessPattern getNullAccessPattern()
Description copied from class:JsonDeserializer
This method may be called in conjunction with calls toJsonDeserializer.getNullValue(DeserializationContext)
, to check whether it needs to be called just once (static values), or each time empty value is needed.Default implementation indicates that "null value" to use for input null is simply Java `null` for all deserializers, unless overridden by sub-classes. This information may be used as optimization.
- Specified by:
getNullAccessPattern
in interfaceNullValueProvider
- Overrides:
getNullAccessPattern
in classStdScalarDeserializer<T>
-
getNullValue
public final T getNullValue(DeserializationContext ctxt) throws JsonMappingException
Description copied from class:JsonDeserializer
Method that can be called to determine value to be used for representing null values (values deserialized when JSON token isJsonToken.VALUE_NULL
). Usually this is simply Java null, but for some types (especially primitives) it may be necessary to use non-null values.This method may be called once, or multiple times, depending on what
JsonDeserializer.getNullAccessPattern()
returns.Default implementation simply returns null.
- Specified by:
getNullValue
in interfaceNullValueProvider
- Overrides:
getNullValue
in classJsonDeserializer<T>
- Throws:
JsonMappingException
-
getEmptyValue
public java.lang.Object getEmptyValue(DeserializationContext ctxt) throws JsonMappingException
Description copied from class:JsonDeserializer
Method called to determine value to be used for "empty" values (most commonly when deserializing from empty JSON Strings). Usually this is same asJsonDeserializer.getNullValue(com.fasterxml.jackson.databind.DeserializationContext)
(which in turn is usually simply Java null), but it can be overridden for specific types. Or, if type should never be converted from empty String, method can also throw an exception.This method may be called once, or multiple times, depending on what
JsonDeserializer.getEmptyAccessPattern()
returns.Default implementation simply calls
JsonDeserializer.getNullValue(com.fasterxml.jackson.databind.DeserializationContext)
and returns value.- Overrides:
getEmptyValue
in classJsonDeserializer<T>
- Throws:
JsonMappingException
-
logicalType
public final LogicalType logicalType()
Description copied from class:JsonDeserializer
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 classStdScalarDeserializer<T>
- Returns:
- Logical type of values this deserializer produces, if known;
null
if not
-
-