public class BeanDeserializer extends BeanDeserializerBase implements java.io.Serializable
JsonDeserializer.None
Modifier and Type | Field and Description |
---|---|
private static long |
serialVersionUID |
_anySetter, _arrayDelegateDeserializer, _backRefs, _beanProperties, _beanType, _delegateDeserializer, _externalTypeIdHandler, _ignorableProps, _ignoreAllUnknown, _injectables, _needViewProcesing, _nonStandardCreation, _objectIdReader, _propertyBasedCreator, _serializationShape, _subDeserializers, _unwrappedPropertyHandler, _valueInstantiator, _vanillaProcessing, TEMP_PROPERTY_NAME
_valueClass, 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.
|
protected |
BeanDeserializer(BeanDeserializerBase src,
boolean ignoreAllUnknown) |
|
BeanDeserializer(BeanDeserializerBase src,
java.util.HashSet<java.lang.String> ignorableProps) |
protected |
BeanDeserializer(BeanDeserializerBase src,
NameTransformer unwrapper) |
|
BeanDeserializer(BeanDeserializerBase src,
ObjectIdReader oir) |
|
BeanDeserializer(BeanDeserializerBuilder builder,
BeanDescription beanDesc,
BeanPropertyMap properties,
java.util.Map<java.lang.String,SettableBeanProperty> backRefs,
java.util.HashSet<java.lang.String> ignorableProps,
boolean ignoreAllUnknown,
boolean hasViews)
Constructor used by
BeanDeserializerBuilder . |
Modifier and Type | Method and Description |
---|---|
protected java.lang.Object |
_deserializeOther(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
com.fasterxml.jackson.core.JsonToken t) |
protected java.lang.Object |
_deserializeUsingPropertyBased(com.fasterxml.jackson.core.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 java.lang.Object |
_deserializeWithErrorWrapping(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
SettableBeanProperty prop) |
protected java.lang.Object |
_missingToken(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt) |
protected BeanDeserializerBase |
asArrayDeserializer()
Fluent factory for creating a variant that can handle
POJO output as a JSON Array.
|
java.lang.Object |
deserialize(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt)
Main deserialization method for bean-based objects (POJOs).
|
java.lang.Object |
deserialize(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
java.lang.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 java.lang.Object |
deserializeFromNull(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt)
Helper method called for rare case of pointing to
JsonToken.VALUE_NULL
token. |
java.lang.Object |
deserializeFromObject(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt)
General version used when handling needs more advanced features.
|
protected java.lang.Object |
deserializeUsingPropertyBasedWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt) |
protected java.lang.Object |
deserializeUsingPropertyBasedWithUnwrapped(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt) |
protected java.lang.Object |
deserializeWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt) |
protected java.lang.Object |
deserializeWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
java.lang.Object bean) |
protected java.lang.Object |
deserializeWithUnwrapped(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt)
Method called when there are declared "unwrapped" properties
which need special handling
|
protected java.lang.Object |
deserializeWithUnwrapped(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
java.lang.Object bean) |
protected java.lang.Object |
deserializeWithView(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
java.lang.Object bean,
java.lang.Class<?> activeView) |
JsonDeserializer<java.lang.Object> |
unwrappingDeserializer(NameTransformer unwrapper)
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.
|
private java.lang.Object |
vanillaDeserialize(com.fasterxml.jackson.core.JsonParser p,
DeserializationContext ctxt,
com.fasterxml.jackson.core.JsonToken t)
Streamlined version that is only used when no "special"
features are enabled.
|
BeanDeserializer |
withIgnorableProperties(java.util.HashSet<java.lang.String> ignorableProps) |
BeanDeserializer |
withObjectIdReader(ObjectIdReader oir) |
_convertObjectId, _findSubclassDeserializer, _handleTypedObjectId, _resolvedObjectIdProperty, _resolveInnerClassValuedProperty, _resolveManagedReferenceProperty, _resolveUnwrappedProperty, createContextual, creatorProperties, deserializeFromArray, deserializeFromBoolean, deserializeFromDouble, deserializeFromEmbedded, deserializeFromNumber, deserializeFromObjectId, deserializeFromObjectUsingNonDefault, deserializeFromString, deserializeWithObjectId, deserializeWithType, findBackReference, findConvertingDeserializer, findProperty, findProperty, findProperty, getBeanClass, getKnownPropertyNames, getObjectIdReader, getPropertyCount, getValueInstantiator, getValueType, handledType, handleIgnoredProperty, handlePolymorphic, handleUnknownProperties, handleUnknownProperty, handleUnknownVanilla, hasProperty, hasViews, injectValues, isCachable, properties, replaceProperty, resolve, wrapAndThrow, wrapAndThrow, wrapInstantiationProblem
_coerceIntegral, _deserializeFromEmpty, _failDoubleToIntCoercion, _hasTextualNull, _isIntNumber, _isNaN, _isNegInf, _isPosInf, _parseBoolean, _parseBooleanFromOther, _parseBooleanPrimitive, _parseByte, _parseDate, _parseDouble, _parseDoublePrimitive, _parseFloat, _parseFloatPrimitive, _parseInteger, _parseIntPrimitive, _parseLong, _parseLongPrimitive, _parseShort, _parseShortPrimitive, _parseString, findConvertingContentDeserializer, findDeserializer, findFormatFeature, findFormatOverrides, getValueClass, isDefaultDeserializer, isDefaultKeyDeserializer, parseDouble
getDelegatee, getEmptyValue, getEmptyValue, getNullValue, getNullValue, replaceDelegatee
private static final long serialVersionUID
public BeanDeserializer(BeanDeserializerBuilder builder, BeanDescription beanDesc, BeanPropertyMap properties, java.util.Map<java.lang.String,SettableBeanProperty> backRefs, java.util.HashSet<java.lang.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, java.util.HashSet<java.lang.String> ignorableProps)
public JsonDeserializer<java.lang.Object> unwrappingDeserializer(NameTransformer unwrapper)
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(java.util.HashSet<java.lang.String> ignorableProps)
withIgnorableProperties
in class BeanDeserializerBase
protected BeanDeserializerBase asArrayDeserializer()
BeanDeserializerBase
asArrayDeserializer
in class BeanDeserializerBase
public java.lang.Object deserialize(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
NOTE: was declared 'final' in 2.2; should NOT be to let extensions like Afterburner change definition.
deserialize
in class JsonDeserializer<java.lang.Object>
p
- Parsed used for reading JSON contentctxt
- Context that can be used to access information about
this deserialization activity.java.io.IOException
protected final java.lang.Object _deserializeOther(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, com.fasterxml.jackson.core.JsonToken t) throws java.io.IOException
java.io.IOException
protected java.lang.Object _missingToken(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
java.io.IOException
public java.lang.Object deserialize(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, java.lang.Object bean) throws java.io.IOException
deserialize
in class JsonDeserializer<java.lang.Object>
java.io.IOException
private final java.lang.Object vanillaDeserialize(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, com.fasterxml.jackson.core.JsonToken t) throws java.io.IOException
java.io.IOException
public java.lang.Object deserializeFromObject(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
deserializeFromObject
in class BeanDeserializerBase
java.io.IOException
protected java.lang.Object _deserializeUsingPropertyBased(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
_deserializeUsingPropertyBased
in class BeanDeserializerBase
java.io.IOException
protected final java.lang.Object _deserializeWithErrorWrapping(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, SettableBeanProperty prop) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeFromNull(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.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.java.io.IOException
protected final java.lang.Object deserializeWithView(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, java.lang.Object bean, java.lang.Class<?> activeView) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeWithUnwrapped(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeWithUnwrapped(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, java.lang.Object bean) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeUsingPropertyBasedWithUnwrapped(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt, java.lang.Object bean) throws java.io.IOException
java.io.IOException
protected java.lang.Object deserializeUsingPropertyBasedWithExternalTypeId(com.fasterxml.jackson.core.JsonParser p, DeserializationContext ctxt) throws java.io.IOException
java.io.IOException