Top Fields Constructors Methods
tools.jackson.module.blackbird.deser

pack-priv final Class SuperSonicBeanDeserializer

extends BeanDeserializer
Class Inheritance
Imports
java.util.*, tools.jackson.core.*, tools.jackson.core.io.SerializedString, tools.jackson.databind.*, tools.jackson.databind.deser.*, tools.jackson.databind.deser.bean.BeanDeserializer, .BeanPropertyMap, .PropertyBasedCreator, tools.jackson.databind.deser.impl.UnwrappedPropertyHandler, tools.jackson.databind.util.NameTransformer

Field Summary

Modifier and TypeField and Description
protected SettableBeanProperty[]
_orderedProperties

Properties matching names in _orderedPropertyNames, assigned after resolution when property instances are finalized.

protected final SerializedString[]
_orderedPropertyNames

Names of properties being deserialized, in ordered they are expected to have been written (as per serialization settings); used for speculative order-based optimizations

Inherited from tools.jackson.databind.deser.bean.BeanDeserializer:
_currentlyTransforming_propNameMatcher_propsByIndex

Constructor Summary

AccessConstructor and Description
public
protected
SuperSonicBeanDeserializer(SuperSonicBeanDeserializer src, UnwrappedPropertyHandler unwrapHandler, PropertyBasedCreator propertyBasedCreator, BeanPropertyMap renamedProperties, boolean ignoreAllUnknown)

Method Summary

Modifier and TypeMethod and Description
public Object
deserialize(JsonParser p, DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

Main deserialization method for bean-based objects (POJOs).

public final Object
deserialize(JsonParser p, DeserializationContext ctxt, Object bean)

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

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.

public final Object
deserializeFromObject(JsonParser p, DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserializeFromObject.

General version used when handling needs more advanced features.

public void
resolve(DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.bean.BeanDeserializerBase.resolve.

This method is overridden as we need to know expected order of properties.

public ValueDeserializer<Object>
unwrappingDeserializer(DeserializationContext ctxt, NameTransformer transformer)

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.unwrappingDeserializer.

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.

Inherited from tools.jackson.databind.deser.bean.BeanDeserializer:
_deserializeFromArray_deserializeOther_deserializeUsingPropertyBased_deserializeWithErrorWrapping_deserializeWithExternalTypeId_handleNullFromPropsBasedCreator_handleUnexpectedWithinasArrayDeserializerdeserializeFromNulldeserializeUsingPropertyBasedWithExternalTypeIddeserializeUsingPropertyBasedWithUnwrappeddeserializeWithExternalTypeIddeserializeWithExternalTypeIddeserializeWithUnwrappeddeserializeWithUnwrappeddeserializeWithViewinitNameMatcherwithBeanPropertieswithByNameInclusionwithIgnoreAllUnknownwithObjectIdReader

Field Detail

_orderedPropertiesback to summary
protected SettableBeanProperty[] _orderedProperties

Properties matching names in _orderedPropertyNames, assigned after resolution when property instances are finalized.

_orderedPropertyNamesback to summary
protected final SerializedString[] _orderedPropertyNames

Names of properties being deserialized, in ordered they are expected to have been written (as per serialization settings); used for speculative order-based optimizations

Constructor Detail

SuperSonicBeanDeserializerback to summary
public SuperSonicBeanDeserializer(BeanDeserializer src, List<SettableBeanProperty> props)
SuperSonicBeanDeserializerback to summary
protected SuperSonicBeanDeserializer(SuperSonicBeanDeserializer src, UnwrappedPropertyHandler unwrapHandler, PropertyBasedCreator propertyBasedCreator, BeanPropertyMap renamedProperties, boolean ignoreAllUnknown)

Method Detail

deserializeback to summary
public Object deserialize(JsonParser p, DeserializationContext ctxt) throws JacksonException

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

Doc from tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

Main deserialization method for bean-based objects (POJOs).

Annotations
@Override
deserializeback to summary
public final Object deserialize(JsonParser p, DeserializationContext ctxt, Object bean) throws JacksonException

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

Doc from tools.jackson.databind.deser.bean.BeanDeserializer.deserialize.

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.

Annotations
@Override
deserializeFromObjectback to summary
public final Object deserializeFromObject(JsonParser p, DeserializationContext ctxt) throws JacksonException

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.deserializeFromObject.

Doc from tools.jackson.databind.deser.bean.BeanDeserializer.deserializeFromObject.

General version used when handling needs more advanced features.

Annotations
@Override
resolveback to summary
public void resolve(DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.bean.BeanDeserializerBase.resolve.

This method is overridden as we need to know expected order of properties.

Annotations
@Override
unwrappingDeserializerback to summary
public ValueDeserializer<Object> unwrappingDeserializer(DeserializationContext ctxt, NameTransformer transformer)

Overrides tools.jackson.databind.deser.bean.BeanDeserializer.unwrappingDeserializer.

Doc from tools.jackson.databind.ValueDeserializer.unwrappingDeserializer.

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.

Default implementation just returns 'this' indicating that no unwrapped variant exists

Annotations
@Override