public class BeanDeserializer extends BeanDeserializerBase implements Serializable
JsonDeserializer.None
Modifier and Type | Field and Description |
---|---|
protected Exception |
_nullFromCreator
Lazily constructed exception used as root cause if reporting problem
with creator method that returns
null (which is not allowed) |
_anySetter, _arrayDelegateDeserializer, _backRefs, _beanProperties, _beanType, _delegateDeserializer, _externalTypeIdHandler, _ignorableProps, _ignoreAllUnknown, _injectables, _needViewProcesing, _nonStandardCreation, _objectIdReader, _propertyBasedCreator, _serializationShape, _subDeserializers, _unwrappedPropertyHandler, _valueInstantiator, _vanillaProcessing, TEMP_PROPERTY_NAME
_valueClass, _valueType, F_MASK_ACCEPT_ARRAYS, F_MASK_INT_COERCIONS
Modifier | Constructor and Description |
---|---|
protected |
BeanDeserializer(BeanDeserializerBase src)
Copy-constructor that can be used by sub-classes to allow
copy-on-write style copying of settings of an existing instance.
|
|
BeanDeserializer(BeanDeserializerBase src,
BeanPropertyMap props) |
protected |
BeanDeserializer(BeanDeserializerBase src,
boolean ignoreAllUnknown) |
protected |
BeanDeserializer(BeanDeserializerBase src,
NameTransformer unwrapper) |
|
BeanDeserializer(BeanDeserializerBase src,
ObjectIdReader oir) |
|
BeanDeserializer(BeanDeserializerBase src,
Set<String> ignorableProps) |
|
BeanDeserializer(BeanDeserializerBuilder builder,
BeanDescription beanDesc,
BeanPropertyMap properties,
Map<String,SettableBeanProperty> backRefs,
HashSet<String> ignorableProps,
boolean ignoreAllUnknown,
boolean hasViews)
Constructor used by
BeanDeserializerBuilder . |
Modifier and Type | Method and Description |
---|---|
protected Exception |
_creatorReturnedNullException()
Helper method for getting a lazily construct exception to be reported
to
DeserializationContext.handleInstantiationProblem(Class, Object, Throwable) . |
protected Object |
_deserializeFromArray(JsonParser p,
DeserializationContext ctxt)
Helper method that allows easy support for array-related
DeserializationFeature s
`ACCEPT_EMPTY_ARRAY_AS_NULL_OBJECT` and `UNWRAP_SINGLE_VALUE_ARRAYS`: checks for either
empty array, or single-value array-wrapped value (respectively), and either reports
an exception (if no match, or feature(s) not enabled), or returns appropriate
result value. |
protected Object |
_deserializeOther(JsonParser p,
DeserializationContext ctxt,
JsonToken t) |
protected Object |
_deserializeUsingPropertyBased(JsonParser p,
DeserializationContext ctxt)
Method called to deserialize bean using "property-based creator":
this means that a non-default constructor or factory method is
called, and then possibly other setters.
|
protected Object |
_deserializeWithErrorWrapping(JsonParser p,
DeserializationContext ctxt,
SettableBeanProperty prop) |
protected Object |
_missingToken(JsonParser p,
DeserializationContext ctxt)
Deprecated.
|
protected BeanDeserializerBase |
asArrayDeserializer()
Fluent factory for creating a variant that can handle
POJO output as a JSON Array.
|
Object |
deserialize(JsonParser p,
DeserializationContext ctxt)
Main deserialization method for bean-based objects (POJOs).
|
Object |
deserialize(JsonParser p,
DeserializationContext ctxt,
Object bean)
Secondary deserialization method, called in cases where POJO
instance is created as part of deserialization, potentially
after collecting some or all of the properties to set.
|
protected Object |
deserializeFromNull(JsonParser p,
DeserializationContext ctxt)
Helper method called for rare case of pointing to
JsonToken.VALUE_NULL
token. |
Object |
deserializeFromObject(JsonParser p,
DeserializationContext ctxt)
General version used when handling needs more advanced features.
|
protected Object |
deserializeUsingPropertyBasedWithExternalTypeId(JsonParser p,
DeserializationContext ctxt) |
protected Object |
deserializeUsingPropertyBasedWithUnwrapped(JsonParser p,
DeserializationContext ctxt) |
protected Object |
deserializeWithExternalTypeId(JsonParser p,
DeserializationContext ctxt) |
protected Object |
deserializeWithExternalTypeId(JsonParser p,
DeserializationContext ctxt,
Object bean) |
protected Object |
deserializeWithUnwrapped(JsonParser p,
DeserializationContext ctxt)
Method called when there are declared "unwrapped" properties
which need special handling
|
protected Object |
deserializeWithUnwrapped(JsonParser p,
DeserializationContext ctxt,
Object bean) |
protected Object |
deserializeWithView(JsonParser p,
DeserializationContext ctxt,
Object bean,
Class<?> activeView) |
JsonDeserializer<Object> |
unwrappingDeserializer(NameTransformer transformer)
Method that will return deserializer instance that is able
to handle "unwrapped" value instances
If no unwrapped instance can be constructed, will simply
return this object as-is.
|
BeanDeserializerBase |
withBeanProperties(BeanPropertyMap props)
Mutant factory method that custom sub-classes must override; not left as
abstract to prevent more drastic backwards compatibility problems.
|
BeanDeserializer |
withIgnorableProperties(Set<String> ignorableProps) |
BeanDeserializerBase |
withIgnoreAllUnknown(boolean ignoreUnknown) |
BeanDeserializer |
withObjectIdReader(ObjectIdReader oir) |
_convertObjectId, _findPropertyUnwrapper, _findSubclassDeserializer, _handleTypedObjectId, _replaceProperty, _resolvedObjectIdProperty, _resolveInnerClassValuedProperty, _resolveManagedReferenceProperty, _resolveMergeAndNullSettings, createContextual, creatorProperties, deserializeFromArray, deserializeFromBoolean, deserializeFromDouble, deserializeFromEmbedded, deserializeFromNumber, deserializeFromObjectId, deserializeFromObjectUsingNonDefault, deserializeFromString, deserializeWithObjectId, deserializeWithType, findBackReference, findConvertingDeserializer, findProperty, findProperty, findProperty, getBeanClass, getEmptyAccessPattern, getEmptyValue, getKnownPropertyNames, getNullAccessPattern, getObjectIdReader, getPropertyCount, getValueInstantiator, getValueType, handledType, handleIgnoredProperty, handlePolymorphic, handleUnknownProperties, handleUnknownProperty, handleUnknownVanilla, hasProperty, hasViews, injectValues, isCachable, properties, replaceProperty, resolve, supportsUpdate, wrapAndThrow, wrapInstantiationProblem
_byteOverflow, _coercedTypeDesc, _coerceEmptyString, _coerceIntegral, _coerceNullToken, _coerceTextualNull, _deserializeFromEmpty, _deserializeWrappedValue, _failDoubleToIntCoercion, _findNullProvider, _hasTextualNull, _intOverflow, _isEmptyOrTextualNull, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _neitherNull, _nonNullNumber, _parseBooleanFromInt, _parseBooleanPrimitive, _parseBytePrimitive, _parseDate, _parseDate, _parseDateFromArray, _parseDoublePrimitive, _parseDoublePrimitive, _parseFloatPrimitive, _parseFloatPrimitive, _parseIntPrimitive, _parseIntPrimitive, _parseLongPrimitive, _parseLongPrimitive, _parseShortPrimitive, _parseString, _reportFailedNullCoerce, _shortOverflow, _verifyEndArrayForSingle, _verifyNullForPrimitive, _verifyNullForPrimitiveCoercion, _verifyNullForScalarCoercion, _verifyNumberForScalarCoercion, _verifyStringForScalarCoercion, findContentNullProvider, findContentNullStyle, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, findValueNullProvider, getValueClass, getValueType, handleMissingEndArrayForSingle, isDefaultDeserializer, isDefaultKeyDeserializer, parseDouble
deserializeWithType, getDelegatee, getEmptyValue, getNullValue, getNullValue, replaceDelegatee
protected transient Exception _nullFromCreator
null
(which is not allowed)public BeanDeserializer(BeanDeserializerBuilder builder, BeanDescription beanDesc, BeanPropertyMap properties, Map<String,SettableBeanProperty> backRefs, HashSet<String> ignorableProps, boolean ignoreAllUnknown, boolean hasViews)
BeanDeserializerBuilder
.protected BeanDeserializer(BeanDeserializerBase src)
protected BeanDeserializer(BeanDeserializerBase src, boolean ignoreAllUnknown)
protected BeanDeserializer(BeanDeserializerBase src, NameTransformer unwrapper)
public BeanDeserializer(BeanDeserializerBase src, ObjectIdReader oir)
public BeanDeserializer(BeanDeserializerBase src, Set<String> ignorableProps)
public BeanDeserializer(BeanDeserializerBase src, BeanPropertyMap props)
public JsonDeserializer<Object> unwrappingDeserializer(NameTransformer transformer)
JsonDeserializer
Default implementation just returns 'this' indicating that no unwrapped variant exists
unwrappingDeserializer
in class BeanDeserializerBase
public BeanDeserializer withObjectIdReader(ObjectIdReader oir)
withObjectIdReader
in class BeanDeserializerBase
public BeanDeserializer withIgnorableProperties(Set<String> ignorableProps)
withIgnorableProperties
in class BeanDeserializerBase
public BeanDeserializerBase withIgnoreAllUnknown(boolean ignoreUnknown)
withIgnoreAllUnknown
in class BeanDeserializerBase
public BeanDeserializerBase withBeanProperties(BeanPropertyMap props)
BeanDeserializerBase
withBeanProperties
in class BeanDeserializerBase
protected BeanDeserializerBase asArrayDeserializer()
BeanDeserializerBase
asArrayDeserializer
in class BeanDeserializerBase
public Object deserialize(JsonParser p, DeserializationContext ctxt) throws IOException
deserialize
in class JsonDeserializer<Object>
p
- Parsed used for reading JSON contentctxt
- Context that can be used to access information about
this deserialization activity.IOException
protected final Object _deserializeOther(JsonParser p, DeserializationContext ctxt, JsonToken t) throws IOException
IOException
@Deprecated protected Object _missingToken(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
public Object deserialize(JsonParser p, DeserializationContext ctxt, Object bean) throws IOException
deserialize
in class JsonDeserializer<Object>
IOException
public Object deserializeFromObject(JsonParser p, DeserializationContext ctxt) throws IOException
deserializeFromObject
in class BeanDeserializerBase
IOException
protected Object _deserializeUsingPropertyBased(JsonParser p, DeserializationContext ctxt) throws IOException
_deserializeUsingPropertyBased
in class BeanDeserializerBase
IOException
protected final Object _deserializeWithErrorWrapping(JsonParser p, DeserializationContext ctxt, SettableBeanProperty prop) throws IOException
IOException
protected Object deserializeFromNull(JsonParser p, DeserializationContext ctxt) throws IOException
JsonToken.VALUE_NULL
token. While this is most often an erroneous condition, there is one specific
case with XML handling where polymorphic type with no properties is exposed
as such, and should be handled same as empty Object.IOException
protected Object _deserializeFromArray(JsonParser p, DeserializationContext ctxt) throws IOException
StdDeserializer
DeserializationFeature
s
`ACCEPT_EMPTY_ARRAY_AS_NULL_OBJECT` and `UNWRAP_SINGLE_VALUE_ARRAYS`: checks for either
empty array, or single-value array-wrapped value (respectively), and either reports
an exception (if no match, or feature(s) not enabled), or returns appropriate
result value.
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 StdDeserializer._deserializeWrappedValue(com.fasterxml.jackson.core.JsonParser, com.fasterxml.jackson.databind.DeserializationContext)
, which by default calls
JsonDeserializer.deserialize(JsonParser, DeserializationContext)
.
_deserializeFromArray
in class StdDeserializer<Object>
IOException
protected final Object deserializeWithView(JsonParser p, DeserializationContext ctxt, Object bean, Class<?> activeView) throws IOException
IOException
protected Object deserializeWithUnwrapped(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
protected Object deserializeWithUnwrapped(JsonParser p, DeserializationContext ctxt, Object bean) throws IOException
IOException
protected Object deserializeUsingPropertyBasedWithUnwrapped(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
protected Object deserializeWithExternalTypeId(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
protected Object deserializeWithExternalTypeId(JsonParser p, DeserializationContext ctxt, Object bean) throws IOException
IOException
protected Object deserializeUsingPropertyBasedWithExternalTypeId(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
protected Exception _creatorReturnedNullException()
DeserializationContext.handleInstantiationProblem(Class, Object, Throwable)
.Copyright © 2008–2020 FasterXML. All rights reserved.