Class PropertyBasedCreator
- java.lang.Object
-
- org.codehaus.jackson.map.deser.impl.PropertyBasedCreator
-
public final class PropertyBasedCreator extends Object
Object that is used to collect arguments for non-default creator (non-default-constructor, or argument-taking factory method) before creator can be called. Since ordering of JSON properties is not guaranteed, this may require buffering of values other than ones being passed to creator.
-
-
Field Summary
Fields Modifier and Type Field Description protected Object[]
_defaultValues
If some property values must always have a non-null value (like primitive types do), this array contains such default values.protected HashMap<String,SettableBeanProperty>
_properties
Map that contains property objects for either constructor or factory method (whichever one is null: one property for each parameter for that one), keyed by logical property nameprotected SettableBeanProperty[]
_propertiesWithInjectables
Array that contains properties that expect value to inject, if any; null if no injectable values are expected.protected ValueInstantiator
_valueInstantiator
-
Constructor Summary
Constructors Constructor Description PropertyBasedCreator(ValueInstantiator valueInstantiator)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
assignDeserializer(SettableBeanProperty prop, JsonDeserializer<Object> deser)
Object
build(PropertyValueBuffer buffer)
SettableBeanProperty
findCreatorProperty(String name)
Collection<SettableBeanProperty>
getCreatorProperties()
PropertyValueBuffer
startBuilding(JsonParser jp, DeserializationContext ctxt)
Method called when starting to build a bean instance.
-
-
-
Field Detail
-
_valueInstantiator
protected final ValueInstantiator _valueInstantiator
-
_properties
protected final HashMap<String,SettableBeanProperty> _properties
Map that contains property objects for either constructor or factory method (whichever one is null: one property for each parameter for that one), keyed by logical property name
-
_defaultValues
protected final Object[] _defaultValues
If some property values must always have a non-null value (like primitive types do), this array contains such default values.
-
_propertiesWithInjectables
protected final SettableBeanProperty[] _propertiesWithInjectables
Array that contains properties that expect value to inject, if any; null if no injectable values are expected.- Since:
- 1.9
-
-
Constructor Detail
-
PropertyBasedCreator
public PropertyBasedCreator(ValueInstantiator valueInstantiator)
-
-
Method Detail
-
getCreatorProperties
public Collection<SettableBeanProperty> getCreatorProperties()
-
findCreatorProperty
public SettableBeanProperty findCreatorProperty(String name)
-
assignDeserializer
public void assignDeserializer(SettableBeanProperty prop, JsonDeserializer<Object> deser)
-
startBuilding
public PropertyValueBuffer startBuilding(JsonParser jp, DeserializationContext ctxt)
Method called when starting to build a bean instance.
-
build
public Object build(PropertyValueBuffer buffer) throws IOException
- Throws:
IOException
-
-