Top Description Fields Constructors Methods
tools.jackson.module.afterburner.deser

public final Class SuperSonicUnrolledDeserializer

extends SuperSonicBDBase
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

Optimized variant used for Beans with 1 to 6 properties; if so, handling is unrolled to eliminate looping.

Field Summary

Modifier and TypeField and Description
protected SerializedString
protected SerializedString
protected SerializedString
protected SerializedString
protected SerializedString
protected SerializedString
protected SettableBeanProperty
protected SettableBeanProperty
protected SettableBeanProperty
protected SettableBeanProperty
protected SettableBeanProperty
protected SettableBeanProperty
protected final int
Inherited from tools.jackson.module.afterburner.deser.SuperSonicBDBase:
_orderedProperties_orderedPropertyNames

Constructor Summary

AccessConstructor and Description
public
protected
SuperSonicUnrolledDeserializer(SuperSonicUnrolledDeserializer 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 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 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.module.afterburner.deser.SuperSonicBDBase.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.module.afterburner.deser.SuperSonicBDBase:
_deserializeDisordered

Field Detail

_name1back to summary
protected SerializedString _name1
_name2back to summary
protected SerializedString _name2
_name3back to summary
protected SerializedString _name3
_name4back to summary
protected SerializedString _name4
_name5back to summary
protected SerializedString _name5
_name6back to summary
protected SerializedString _name6
_prop1back to summary
protected SettableBeanProperty _prop1
_prop2back to summary
protected SettableBeanProperty _prop2
_prop3back to summary
protected SettableBeanProperty _prop3
_prop4back to summary
protected SettableBeanProperty _prop4
_prop5back to summary
protected SettableBeanProperty _prop5
_prop6back to summary
protected SettableBeanProperty _prop6
_propCountback to summary
protected final int _propCount

Constructor Detail

SuperSonicUnrolledDeserializerback to summary
public SuperSonicUnrolledDeserializer(BeanDeserializer src, List<SettableBeanProperty> props)
SuperSonicUnrolledDeserializerback to summary
protected SuperSonicUnrolledDeserializer(SuperSonicUnrolledDeserializer 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 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 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.module.afterburner.deser.SuperSonicBDBase.resolve.

Doc from tools.jackson.module.afterburner.deser.SuperSonicBDBase.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