Class StdDeserializer<T>
- All Implemented Interfaces:
NullValueProvider
,ValueInstantiator.Gettable
,Serializable
- Direct Known Subclasses:
BeanDeserializerBase
,ContainerDeserializerBase
,DelegatingDeserializer
,EnumSetDeserializer
,FailingDeserializer
,JsonNodeDeserializer
,NullifyingDeserializer
,PrimitiveArrayDeserializers
,ReferenceTypeDeserializer
,StdDelegatingDeserializer
,StdNodeBasedDeserializer
,StdScalarDeserializer
,StringArrayDeserializer
,UnsupportedTypeDeserializer
,UntypedObjectDeserializer
,UntypedObjectDeserializer.Vanilla
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.JsonDeserializer
JsonDeserializer.None
-
Field Summary
Modifier and TypeFieldDescriptionprotected final Class<?>
Type of values this deserializer handles: sometimes exact types, other time most specific supertype of types deserializer handles (which may be as generic asObject
in some case)protected final JavaType
protected static final int
Deprecated.protected static final int
Bitmask that coversDeserializationFeature.USE_BIG_INTEGER_FOR_INTS
andDeserializationFeature.USE_LONG_FOR_INTS
, used for more efficient cheks when coercing integral values for untyped deserialization. -
Constructor Summary
ModifierConstructorDescriptionprotected
StdDeserializer
(StdDeserializer<?> src) Copy-constructor for sub-classes to use, most often when creating new instances forContextualDeserializer
.protected
StdDeserializer
(JavaType valueType) protected
StdDeserializer
(Class<?> vc) -
Method Summary
Modifier and TypeMethodDescriptionprotected final boolean
_byteOverflow
(int value) protected CoercionAction
_checkBooleanToStringCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected CoercionAction
_checkCoercionFail
(DeserializationContext ctxt, CoercionAction act, Class<?> targetType, Object inputValue, String inputDesc) protected Double
Helper method called to check whether given String value contains one of "special" values (currently, NaN ("not-a-number") and plus/minus Infinity) and if so, returns that value; otherwise returnsnull
.protected Float
Helper method called to check whether given String value contains one of "special" values (currently, NaN ("not-a-number") and plus/minus Infinity) and if so, returns that value; otherwise returnsnull
.protected CoercionAction
_checkFloatToIntCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected CoercionAction
_checkFloatToStringCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected CoercionAction
_checkFromStringCoercion
(DeserializationContext ctxt, String value) protected CoercionAction
_checkFromStringCoercion
(DeserializationContext ctxt, String value, LogicalType logicalType, Class<?> rawTargetType) protected CoercionAction
_checkIntToFloatCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected CoercionAction
_checkIntToStringCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected boolean
_checkTextualNull
(DeserializationContext ctxt, String text) Method called when otherwise unrecognized String value is encountered for a non-primitive type: should see if it is String value"null"
, and if so, whether it is acceptable according to configuration or notprotected CoercionAction
_checkToStringCoercion
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType, Object inputValue, CoercionInputShape inputShape) protected Boolean
_coerceBooleanFromInt
(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) protected String
Helper method called to get a description of type into which a scalar value coercion is (most likely) being applied, to be used for constructing exception messages on coerce failure.protected Object
_coerceEmptyString
(DeserializationContext ctxt, boolean isPrimitive) Deprecated.Since 2.12protected Object
Helper method called in case where an integral number is encountered, but config settings suggest that a coercion may be needed to "upgrade"Number
into "bigger" type likeLong
orBigInteger
protected Object
_coerceNullToken
(DeserializationContext ctxt, boolean isPrimitive) Deprecated.protected Object
_coerceTextualNull
(DeserializationContext ctxt, boolean isPrimitive) Deprecated.protected T
Helper method that allows easy support for array-related coercion features: checks for either empty array, or single-value array-wrapped value (if coercion enabled byCoercionConfigs
(since 2.12), and either reports an exception (if no coercion allowed), or returns appropriate result value using coercion mechanism indicated.protected T
Deprecated.Since 2.12protected Object
_deserializeFromEmptyString
(JsonParser p, DeserializationContext ctxt, CoercionAction act, Class<?> rawTargetType, String desc) protected T
Helper method to call in case deserializer does not support native automatic use of incoming String values, but there may be standard coercions to consider.protected T
Helper called to supportDeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS
: default implementation simply callsJsonDeserializer.deserialize(JsonParser, DeserializationContext)
, but handling may be overridden.protected void
_failDoubleToIntCoercion
(JsonParser p, DeserializationContext ctxt, String type) Deprecated.protected CoercionAction
protected CoercionAction
protected CoercionAction
protected final NullValueProvider
_findNullProvider
(DeserializationContext ctxt, BeanProperty prop, Nulls nulls, JsonDeserializer<?> valueDeser) protected boolean
_hasTextualNull
(String value) Helper method called to determine if we are seeing String value of "null", and, further, that it should be coerced to null just like null token.protected final boolean
_intOverflow
(long value) protected static final boolean
protected boolean
_isEmptyOrTextualNull
(String value) Deprecated.protected boolean
protected final boolean
_isIntNumber
(String text) Helper method to check whether given text refers to what looks like a clean simple integer number, consisting of optional sign followed by a sequence of digits.protected final boolean
protected final boolean
protected final boolean
protected boolean
protected static final boolean
_neitherNull
(Object a, Object b) protected Number
protected final Boolean
_parseBoolean
(JsonParser p, DeserializationContext ctxt, Class<?> targetType) Helper method called for cases where non-primitive, boolean-based value is to be deserialized: result of this method will beBoolean
, although actual target type may be something different.protected boolean
Deprecated.protected final boolean
protected final boolean
_parseBooleanPrimitive
(DeserializationContext ctxt, JsonParser p, Class<?> targetType) Deprecated.protected final byte
protected Date
_parseDate
(JsonParser p, DeserializationContext ctxt) protected Date
_parseDate
(String value, DeserializationContext ctxt) protected Date
protected static final double
_parseDouble
(String numStr) Helper method for encapsulating calls to low-level double value parsing; single place just because we need a work-around that must be applied to all calls.protected static final double
_parseDouble
(String numStr, boolean useFastParser) Helper method for encapsulating calls to low-level double value parsing; single place just because we need a work-around that must be applied to all calls.protected final double
protected final double
_parseDoublePrimitive
(JsonParser p, DeserializationContext ctxt, String text) protected final double
_parseDoublePrimitive
(DeserializationContext ctxt, String text) protected final float
protected final float
_parseFloatPrimitive
(JsonParser p, DeserializationContext ctxt, String text) protected final float
_parseFloatPrimitive
(DeserializationContext ctxt, String text) protected final Integer
_parseInteger
(JsonParser p, DeserializationContext ctxt, Class<?> targetType) protected final Integer
_parseInteger
(DeserializationContext ctxt, String text) protected final int
protected final int
_parseIntPrimitive
(DeserializationContext ctxt, String text) protected final Long
_parseLong
(JsonParser p, DeserializationContext ctxt, Class<?> targetType) protected final Long
_parseLong
(DeserializationContext ctxt, String text) protected final long
protected final long
_parseLongPrimitive
(DeserializationContext ctxt, String text) protected final short
protected final String
_parseString
(JsonParser p, DeserializationContext ctxt) Deprecated.Since 2.14 (use the non-deprecated overload)protected final String
_parseString
(JsonParser p, DeserializationContext ctxt, NullValueProvider nullProvider) Helper method used for deserializing String value, if possible, doing necessary conversion or throwing exception as necessary.protected void
_reportFailedNullCoerce
(DeserializationContext ctxt, boolean state, Enum<?> feature, String inputDesc) protected final boolean
_shortOverflow
(int value) protected void
protected final void
Method called to verify thatnull
token from input is acceptable for primitive (unboxed) target type.protected final void
Method called to verify that text value"null"
from input is acceptable for primitive (unboxed) target type.protected final void
Deprecated.protected void
Deprecated.protected void
Deprecated.deserializeWithType
(JsonParser p, DeserializationContext ctxt, TypeDeserializer typeDeserializer) Base implementation that does not assume specific type inclusion mechanism.protected NullValueProvider
findContentNullProvider
(DeserializationContext ctxt, BeanProperty prop, JsonDeserializer<?> valueDeser) Method called to findNullValueProvider
for a contents of a structured primary property (Collection, Map, array), using "content nulls" setting.protected Nulls
findContentNullStyle
(DeserializationContext ctxt, BeanProperty prop) protected JsonDeserializer<?>
findConvertingContentDeserializer
(DeserializationContext ctxt, BeanProperty prop, JsonDeserializer<?> existingDeserializer) Helper method that can be used to see if specified property has annotation indicating that a converter is to be used for contained values (contents of structured types; array/List/Map values)protected JsonDeserializer<Object>
findDeserializer
(DeserializationContext ctxt, JavaType type, BeanProperty property) Helper method used to locate deserializers for properties the type this deserializer handles contains (usually for properties of bean types)protected Boolean
findFormatFeature
(DeserializationContext ctxt, BeanProperty prop, Class<?> typeForDefaults, JsonFormat.Feature feat) Convenience method that usesfindFormatOverrides(edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.DeserializationContext, edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.BeanProperty, java.lang.Class<?>)
to find possible defaults and/of overrides, and then callsJsonFormat.Value.getFeature(feat)
to find whether that feature has been specifically marked as enabled or disabled.protected JsonFormat.Value
findFormatOverrides
(DeserializationContext ctxt, BeanProperty prop, Class<?> typeForDefaults) Helper method that may be used to find if this deserializer has specificJsonFormat
settings, either via property, or through type-specific defaulting.protected final NullValueProvider
findValueNullProvider
(DeserializationContext ctxt, SettableBeanProperty prop, PropertyMetadata propMetadata) Method called to findNullValueProvider
for a primary property, using "value nulls" setting.final Class<?>
Deprecated.Since 2.3 usehandledType()
insteadExact structured type this deserializer handles, if known.Convenience method for getting handled type asJavaType
, regardless of whether deserializer has one already resolved (and accessible viagetValueType()
) or not: equivalent to:Class<?>
Method for accessing concrete physical type of values this deserializer produces.protected void
protected Object
Helper method called when detecting a deep(er) nesting of Arrays when trying to unwrap value forDeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS
.protected void
handleUnknownProperty
(JsonParser p, DeserializationContext ctxt, Object instanceOrClass, String propName) Method called to deal with a property that did not map to a known Bean property.protected boolean
isDefaultDeserializer
(JsonDeserializer<?> deserializer) Method that can be called to determine if given deserializer is the default deserializer Jackson uses; as opposed to a custom deserializer installed by a module or calling application.protected boolean
isDefaultKeyDeserializer
(KeyDeserializer keyDeser) Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.JsonDeserializer
deserialize, deserialize, deserializeWithType, findBackReference, getAbsentValue, getDelegatee, getEmptyAccessPattern, getEmptyValue, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getNullValue, getNullValue, getObjectIdReader, isCachable, logicalType, replaceDelegatee, supportsUpdate, unwrappingDeserializer
-
Field Details
-
F_MASK_INT_COERCIONS
protected static final int F_MASK_INT_COERCIONSBitmask that coversDeserializationFeature.USE_BIG_INTEGER_FOR_INTS
andDeserializationFeature.USE_LONG_FOR_INTS
, used for more efficient cheks when coercing integral values for untyped deserialization.- Since:
- 2.6
-
F_MASK_ACCEPT_ARRAYS
Deprecated. -
_valueClass
Type of values this deserializer handles: sometimes exact types, other time most specific supertype of types deserializer handles (which may be as generic asObject
in some case) -
_valueType
-
-
Constructor Details
-
StdDeserializer
-
StdDeserializer
-
StdDeserializer
Copy-constructor for sub-classes to use, most often when creating new instances forContextualDeserializer
.- Since:
- 2.5
-
-
Method Details
-
handledType
Description copied from class:JsonDeserializer
Method for accessing concrete physical type of values this deserializer produces. Note that this information is not guaranteed to be exact -- it may be a more generic (super-type) -- but it should not be incorrect (return a non-related type).Default implementation will return null, which means almost same same as returning
Object.class
would; that is, that nothing is known about handled type.- Overrides:
handledType
in classJsonDeserializer<T>
- Returns:
- Physical type of values this deserializer produces, if known;
null
if not
-
getValueClass
Deprecated.Since 2.3 usehandledType()
instead -
getValueType
Exact structured type this deserializer handles, if known. -
getValueType
Convenience method for getting handled type asJavaType
, regardless of whether deserializer has one already resolved (and accessible viagetValueType()
) or not: equivalent to:if (getValueType() != null) { return getValueType(); } return ctxt.constructType(handledType());
- Since:
- 2.10
-
getValueInstantiator
- Specified by:
getValueInstantiator
in interfaceValueInstantiator.Gettable
- Since:
- 2.12
-
isDefaultDeserializer
Method that can be called to determine if given deserializer is the default deserializer Jackson uses; as opposed to a custom deserializer installed by a module or calling application. Determination is done usingJacksonStdImpl
annotation on deserializer class. -
isDefaultKeyDeserializer
-
deserializeWithType
public Object deserializeWithType(JsonParser p, DeserializationContext ctxt, TypeDeserializer typeDeserializer) throws IOException Base implementation that does not assume specific type inclusion mechanism. Sub-classes are expected to override this method if they are to handle type information.- Overrides:
deserializeWithType
in classJsonDeserializer<T>
typeDeserializer
- Deserializer to use for handling type information- Throws:
IOException
-
_deserializeFromArray
Helper method that allows easy support for array-related coercion features: checks for either empty array, or single-value array-wrapped value (if coercion enabled byCoercionConfigs
(since 2.12), and either reports an exception (if no coercion allowed), or returns appropriate result value using coercion mechanism indicated.This method should NOT be called if Array representation is explicitly supported for type: it should only be called in case it is otherwise unrecognized.
NOTE: in case of unwrapped single element, will handle actual decoding by calling
_deserializeWrappedValue(edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.core.JsonParser, edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.DeserializationContext)
, which by default callsJsonDeserializer.deserialize(JsonParser, DeserializationContext)
.- Throws:
IOException
- Since:
- 2.9
-
_deserializeFromEmpty
@Deprecated protected T _deserializeFromEmpty(JsonParser p, DeserializationContext ctxt) throws IOException Deprecated.Since 2.12Helper method that may be used to support fallback for Empty String / Empty Array non-standard representations; usually for things serialized as JSON Objects.- Throws:
IOException
- Since:
- 2.5
-
_deserializeFromString
Helper method to call in case deserializer does not support native automatic use of incoming String values, but there may be standard coercions to consider.- Throws:
IOException
- Since:
- 2.12
-
_deserializeFromEmptyString
protected Object _deserializeFromEmptyString(JsonParser p, DeserializationContext ctxt, CoercionAction act, Class<?> rawTargetType, String desc) throws IOException - Throws:
IOException
-
_deserializeWrappedValue
Helper called to supportDeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS
: default implementation simply callsJsonDeserializer.deserialize(JsonParser, DeserializationContext)
, but handling may be overridden.- Throws:
IOException
- Since:
- 2.9
-
_parseBooleanPrimitive
@Deprecated protected final boolean _parseBooleanPrimitive(DeserializationContext ctxt, JsonParser p, Class<?> targetType) throws IOException Deprecated.- Throws:
IOException
-
_parseBooleanPrimitive
protected final boolean _parseBooleanPrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Parameters:
ctxt
- Deserialization context for accessing configurationp
- Underlying parser- Throws:
IOException
-
_isTrue
-
_isFalse
-
_parseBoolean
protected final Boolean _parseBoolean(JsonParser p, DeserializationContext ctxt, Class<?> targetType) throws IOException Helper method called for cases where non-primitive, boolean-based value is to be deserialized: result of this method will beBoolean
, although actual target type may be something different.Note: does NOT dynamically access "empty value" or "null value" of deserializer since those values could be of type other than
Boolean
. Caller may need to translate from 3 possible result types into appropriately matching output types.- Parameters:
p
- Underlying parserctxt
- Deserialization context for accessing configurationtargetType
- Actual type that is being deserialized, may be same ashandledType()
but could beAtomicBoolean
for example. Used for coercion config access.- Throws:
IOException
- Since:
- 2.12
-
_parseBytePrimitive
protected final byte _parseBytePrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseShortPrimitive
protected final short _parseShortPrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseIntPrimitive
protected final int _parseIntPrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseIntPrimitive
- Throws:
IOException
- Since:
- 2.9
-
_parseInteger
protected final Integer _parseInteger(JsonParser p, DeserializationContext ctxt, Class<?> targetType) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_parseInteger
- Throws:
IOException
- Since:
- 2.14
-
_parseLongPrimitive
protected final long _parseLongPrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseLongPrimitive
protected final long _parseLongPrimitive(DeserializationContext ctxt, String text) throws IOException - Throws:
IOException
- Since:
- 2.9
-
_parseLong
protected final Long _parseLong(JsonParser p, DeserializationContext ctxt, Class<?> targetType) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_parseLong
- Throws:
IOException
- Since:
- 2.14
-
_parseFloatPrimitive
protected final float _parseFloatPrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseFloatPrimitive
protected final float _parseFloatPrimitive(DeserializationContext ctxt, String text) throws IOException - Throws:
IOException
- Since:
- 2.9
-
_parseFloatPrimitive
protected final float _parseFloatPrimitive(JsonParser p, DeserializationContext ctxt, String text) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_checkFloatSpecialValue
Helper method called to check whether given String value contains one of "special" values (currently, NaN ("not-a-number") and plus/minus Infinity) and if so, returns that value; otherwise returnsnull
.- Parameters:
text
- String value to check- Returns:
- One of
Float
constants referring to special value decoded, if value matched;null
otherwise. - Since:
- 2.12
-
_parseDoublePrimitive
protected final double _parseDoublePrimitive(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_parseDoublePrimitive
protected final double _parseDoublePrimitive(DeserializationContext ctxt, String text) throws IOException - Throws:
IOException
- Since:
- 2.9
-
_parseDoublePrimitive
protected final double _parseDoublePrimitive(JsonParser p, DeserializationContext ctxt, String text) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_parseDouble
Helper method for encapsulating calls to low-level double value parsing; single place just because we need a work-around that must be applied to all calls. Does not use the newuseFastParser
support.- Throws:
NumberFormatException
- See Also:
-
_parseDouble
protected static final double _parseDouble(String numStr, boolean useFastParser) throws NumberFormatException Helper method for encapsulating calls to low-level double value parsing; single place just because we need a work-around that must be applied to all calls.- Throws:
NumberFormatException
- Since:
- 2.14
-
_checkDoubleSpecialValue
Helper method called to check whether given String value contains one of "special" values (currently, NaN ("not-a-number") and plus/minus Infinity) and if so, returns that value; otherwise returnsnull
.- Parameters:
text
- String value to check- Returns:
- One of
Double
constants referring to special value decoded, if value matched;null
otherwise. - Since:
- 2.12
-
_parseDate
- Throws:
IOException
-
_parseDateFromArray
- Throws:
IOException
-
_parseDate
- Throws:
IOException
- Since:
- 2.8
-
_parseString
@Deprecated protected final String _parseString(JsonParser p, DeserializationContext ctxt) throws IOException Deprecated.Since 2.14 (use the non-deprecated overload)- Throws:
IOException
- Since:
- 2.1
-
_parseString
protected final String _parseString(JsonParser p, DeserializationContext ctxt, NullValueProvider nullProvider) throws IOException Helper method used for deserializing String value, if possible, doing necessary conversion or throwing exception as necessary.Starting with 2.14 will also start checking
CoercionConfig
configuration to check whether coercion needed is allowed.- Parameters:
p
- Currently active parser being iterated overctxt
- Deserialization contextnullProvider
- Entity we (only) need for case of secondary value type being coerced intonull
: if so, provider is asked for possible "null replacement" value.- Throws:
IOException
- Since:
- 2.14 (with this signature)
-
_hasTextualNull
Helper method called to determine if we are seeing String value of "null", and, further, that it should be coerced to null just like null token.- Since:
- 2.3
-
_isNegInf
-
_isPosInf
-
_isNaN
-
_isBlank
-
_checkFromStringCoercion
protected CoercionAction _checkFromStringCoercion(DeserializationContext ctxt, String value) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_checkFromStringCoercion
protected CoercionAction _checkFromStringCoercion(DeserializationContext ctxt, String value, LogicalType logicalType, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_checkFloatToIntCoercion
protected CoercionAction _checkFloatToIntCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_checkIntToStringCoercion
protected CoercionAction _checkIntToStringCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_checkFloatToStringCoercion
protected CoercionAction _checkFloatToStringCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_checkBooleanToStringCoercion
protected CoercionAction _checkBooleanToStringCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_checkToStringCoercion
protected CoercionAction _checkToStringCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType, Object inputValue, CoercionInputShape inputShape) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_checkIntToFloatCoercion
protected CoercionAction _checkIntToFloatCoercion(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.14
-
_coerceBooleanFromInt
protected Boolean _coerceBooleanFromInt(JsonParser p, DeserializationContext ctxt, Class<?> rawTargetType) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_checkCoercionFail
protected CoercionAction _checkCoercionFail(DeserializationContext ctxt, CoercionAction act, Class<?> targetType, Object inputValue, String inputDesc) throws IOException - Throws:
IOException
- Since:
- 2.12
-
_checkTextualNull
protected boolean _checkTextualNull(DeserializationContext ctxt, String text) throws JsonMappingException Method called when otherwise unrecognized String value is encountered for a non-primitive type: should see if it is String value"null"
, and if so, whether it is acceptable according to configuration or not- Throws:
JsonMappingException
- Since:
- 2.12
-
_coerceIntegral
Helper method called in case where an integral number is encountered, but config settings suggest that a coercion may be needed to "upgrade"Number
into "bigger" type likeLong
orBigInteger
- Throws:
IOException
- Since:
- 2.6
- See Also:
-
_verifyNullForPrimitive
protected final void _verifyNullForPrimitive(DeserializationContext ctxt) throws JsonMappingException Method called to verify thatnull
token from input is acceptable for primitive (unboxed) target type. It should NOT be called ifnull
was received by other means (coerced due to configuration, or even from optionally acceptable String"null"
token).- Throws:
JsonMappingException
- Since:
- 2.9
-
_verifyNullForPrimitiveCoercion
protected final void _verifyNullForPrimitiveCoercion(DeserializationContext ctxt, String str) throws JsonMappingException Method called to verify that text value"null"
from input is acceptable for primitive (unboxed) target type. It should not be called if actualnull
token was received, or if null is a result of coercion from Some other input type.- Throws:
JsonMappingException
- Since:
- 2.9
-
_reportFailedNullCoerce
protected void _reportFailedNullCoerce(DeserializationContext ctxt, boolean state, Enum<?> feature, String inputDesc) throws JsonMappingException - Throws:
JsonMappingException
-
_coercedTypeDesc
Helper method called to get a description of type into which a scalar value coercion is (most likely) being applied, to be used for constructing exception messages on coerce failure.- Returns:
- Message with backtick-enclosed name of type this deserializer supports
- Since:
- 2.9
-
_parseBooleanFromInt
@Deprecated protected boolean _parseBooleanFromInt(JsonParser p, DeserializationContext ctxt) throws IOException Deprecated.- Throws:
IOException
-
_verifyStringForScalarCoercion
@Deprecated protected void _verifyStringForScalarCoercion(DeserializationContext ctxt, String str) throws JsonMappingException Deprecated.- Throws:
JsonMappingException
-
_coerceEmptyString
@Deprecated protected Object _coerceEmptyString(DeserializationContext ctxt, boolean isPrimitive) throws JsonMappingException Deprecated.Since 2.12Method called when JSON String with value "" (that is, zero length) is encountered.- Throws:
JsonMappingException
-
_failDoubleToIntCoercion
@Deprecated protected void _failDoubleToIntCoercion(JsonParser p, DeserializationContext ctxt, String type) throws IOException Deprecated.- Throws:
IOException
-
_verifyNullForScalarCoercion
@Deprecated protected final void _verifyNullForScalarCoercion(DeserializationContext ctxt, String str) throws JsonMappingException Deprecated.- Throws:
JsonMappingException
-
_verifyNumberForScalarCoercion
@Deprecated protected void _verifyNumberForScalarCoercion(DeserializationContext ctxt, JsonParser p) throws IOException Deprecated.- Throws:
IOException
-
_coerceNullToken
@Deprecated protected Object _coerceNullToken(DeserializationContext ctxt, boolean isPrimitive) throws JsonMappingException Deprecated.- Throws:
JsonMappingException
-
_coerceTextualNull
@Deprecated protected Object _coerceTextualNull(DeserializationContext ctxt, boolean isPrimitive) throws JsonMappingException Deprecated.- Throws:
JsonMappingException
-
_isEmptyOrTextualNull
Deprecated. -
findDeserializer
protected JsonDeserializer<Object> findDeserializer(DeserializationContext ctxt, JavaType type, BeanProperty property) throws JsonMappingException Helper method used to locate deserializers for properties the type this deserializer handles contains (usually for properties of bean types)- Parameters:
type
- Type of property to deserializeproperty
- Actual property object (field, method, constuctor parameter) used for passing deserialized values; provided so deserializer can be contextualized if necessary- Throws:
JsonMappingException
-
_isIntNumber
Helper method to check whether given text refers to what looks like a clean simple integer number, consisting of optional sign followed by a sequence of digits.Note that definition is quite loose as leading zeroes are allowed, in addition to plus sign (not just minus).
-
findConvertingContentDeserializer
protected JsonDeserializer<?> findConvertingContentDeserializer(DeserializationContext ctxt, BeanProperty prop, JsonDeserializer<?> existingDeserializer) throws JsonMappingException Helper method that can be used to see if specified property has annotation indicating that a converter is to be used for contained values (contents of structured types; array/List/Map values)- Parameters:
existingDeserializer
- (optional) configured content serializer if one already exists.- Throws:
JsonMappingException
- Since:
- 2.2
-
findFormatOverrides
protected JsonFormat.Value findFormatOverrides(DeserializationContext ctxt, BeanProperty prop, Class<?> typeForDefaults) Helper method that may be used to find if this deserializer has specificJsonFormat
settings, either via property, or through type-specific defaulting.- Parameters:
typeForDefaults
- Type (erased) used for finding default format settings, if any- Since:
- 2.7
-
findFormatFeature
protected Boolean findFormatFeature(DeserializationContext ctxt, BeanProperty prop, Class<?> typeForDefaults, JsonFormat.Feature feat) Convenience method that usesfindFormatOverrides(edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.DeserializationContext, edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.BeanProperty, java.lang.Class<?>)
to find possible defaults and/of overrides, and then callsJsonFormat.Value.getFeature(feat)
to find whether that feature has been specifically marked as enabled or disabled.- Parameters:
typeForDefaults
- Type (erased) used for finding default format settings, if any- Since:
- 2.7
-
findValueNullProvider
protected final NullValueProvider findValueNullProvider(DeserializationContext ctxt, SettableBeanProperty prop, PropertyMetadata propMetadata) throws JsonMappingException Method called to findNullValueProvider
for a primary property, using "value nulls" setting. If no provider found (not defined, or is "skip"), will return `null`.- Throws:
JsonMappingException
- Since:
- 2.9
-
findContentNullProvider
protected NullValueProvider findContentNullProvider(DeserializationContext ctxt, BeanProperty prop, JsonDeserializer<?> valueDeser) throws JsonMappingException Method called to findNullValueProvider
for a contents of a structured primary property (Collection, Map, array), using "content nulls" setting. If no provider found (not defined), will return given value deserializer (which is a null value provider itself).- Throws:
JsonMappingException
- Since:
- 2.9
-
findContentNullStyle
protected Nulls findContentNullStyle(DeserializationContext ctxt, BeanProperty prop) throws JsonMappingException - Throws:
JsonMappingException
-
_findNullProvider
protected final NullValueProvider _findNullProvider(DeserializationContext ctxt, BeanProperty prop, Nulls nulls, JsonDeserializer<?> valueDeser) throws JsonMappingException - Throws:
JsonMappingException
-
_findCoercionFromEmptyString
-
_findCoercionFromEmptyArray
-
_findCoercionFromBlankString
-
handleUnknownProperty
protected void handleUnknownProperty(JsonParser p, DeserializationContext ctxt, Object instanceOrClass, String propName) throws IOException Method called to deal with a property that did not map to a known Bean property. Method can deal with the problem as it sees fit (ignore, throw exception); but if it does return, it has to skip the matching Json content parser has.- Parameters:
p
- Parser that points to value of the unknown propertyctxt
- Context for deserialization; allows access to the parser, error reporting functionalityinstanceOrClass
- Instance that is being populated by this deserializer, or if not known, Class that would be instantiated. If null, will assume type is whatgetValueClass()
returns.propName
- Name of the property that cannot be mapped- Throws:
IOException
-
handleMissingEndArrayForSingle
protected void handleMissingEndArrayForSingle(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
handleNestedArrayForSingle
protected Object handleNestedArrayForSingle(JsonParser p, DeserializationContext ctxt) throws IOException Helper method called when detecting a deep(er) nesting of Arrays when trying to unwrap value forDeserializationFeature.UNWRAP_SINGLE_VALUE_ARRAYS
.- Throws:
IOException
- Since:
- 2.14
-
_verifyEndArrayForSingle
protected void _verifyEndArrayForSingle(JsonParser p, DeserializationContext ctxt) throws IOException - Throws:
IOException
-
_neitherNull
- Since:
- 2.9
-
_byteOverflow
protected final boolean _byteOverflow(int value) - Since:
- 2.9
-
_shortOverflow
protected final boolean _shortOverflow(int value) - Since:
- 2.9
-
_intOverflow
protected final boolean _intOverflow(long value) - Since:
- 2.9
-
_nonNullNumber
- Since:
- 2.9
-