public class PropertyValueBuffer extends Object
PropertyValue
s.
Using during construction of beans (and Maps) that use Creators,
and hence need buffering before instance (that will have properties
to assign values to) is constructed.Modifier and Type | Field and Description |
---|---|
protected PropertyValue |
_buffered
If we get non-creator parameters before or between
creator parameters, those need to be buffered.
|
protected DeserializationContext |
_context |
protected Object[] |
_creatorParameters
Buffer used for storing creator parameters for constructing
instance.
|
protected Object |
_idValue
In case there is an Object Id property to handle, this is the value
we have for it.
|
protected ObjectIdReader |
_objectIdReader |
protected int |
_paramsNeeded
Number of creator parameters for which we have not yet received
values.
|
protected int |
_paramsSeen
Bitflag used to track parameters found from incoming data
when number of parameters is
less than 32 (fits in int).
|
protected BitSet |
_paramsSeenBig
Bitflag used to track parameters found from incoming data
when number of parameters is
32 or higher.
|
protected com.fasterxml.jackson.core.JsonParser |
_parser |
Constructor and Description |
---|
PropertyValueBuffer(com.fasterxml.jackson.core.JsonParser jp,
DeserializationContext ctxt,
int paramCount,
ObjectIdReader oir) |
Modifier and Type | Method and Description |
---|---|
protected Object |
_findMissing(SettableBeanProperty prop) |
boolean |
assignParameter(int index,
Object value)
Deprecated.
Since 2.6
|
boolean |
assignParameter(SettableBeanProperty prop,
Object value) |
void |
bufferAnyProperty(SettableAnyProperty prop,
String propName,
Object value) |
protected PropertyValue |
buffered() |
void |
bufferMapProperty(Object key,
Object value) |
void |
bufferProperty(SettableBeanProperty prop,
Object value) |
protected Object[] |
getParameters(SettableBeanProperty[] props)
Method called to do necessary post-processing such as injection of values
and verification of values for required properties,
after either
assignParameter(SettableBeanProperty, Object)
returns true (to indicate all creator properties are found), or when
then whole JSON Object has been processed, |
Object |
handleIdValue(DeserializationContext ctxt,
Object bean)
Helper method called to handle Object Id value collected earlier, if any
|
boolean |
isComplete() |
boolean |
readIdProperty(String propName)
Helper method called to see if given non-creator property is the "id property";
and if so, handle appropriately.
|
protected final com.fasterxml.jackson.core.JsonParser _parser
protected final DeserializationContext _context
protected final ObjectIdReader _objectIdReader
protected final Object[] _creatorParameters
protected int _paramsNeeded
protected int _paramsSeen
protected final BitSet _paramsSeenBig
protected PropertyValue _buffered
protected Object _idValue
public PropertyValueBuffer(com.fasterxml.jackson.core.JsonParser jp, DeserializationContext ctxt, int paramCount, ObjectIdReader oir)
protected Object[] getParameters(SettableBeanProperty[] props) throws JsonMappingException
assignParameter(SettableBeanProperty, Object)
returns true
(to indicate all creator properties are found), or when
then whole JSON Object has been processed,JsonMappingException
protected Object _findMissing(SettableBeanProperty prop) throws JsonMappingException
JsonMappingException
public boolean readIdProperty(String propName) throws IOException
IOException
public Object handleIdValue(DeserializationContext ctxt, Object bean) throws IOException
IOException
protected PropertyValue buffered()
public boolean isComplete()
public boolean assignParameter(SettableBeanProperty prop, Object value)
@Deprecated public boolean assignParameter(int index, Object value)
public void bufferProperty(SettableBeanProperty prop, Object value)
public void bufferAnyProperty(SettableAnyProperty prop, String propName, Object value)
Copyright © 2014–2015 FasterXML. All rights reserved.