Package com.fasterxml.jackson.jr.ob.impl
Class BeanReader
- java.lang.Object
-
- com.fasterxml.jackson.jr.ob.api.ValueReader
-
- com.fasterxml.jackson.jr.ob.impl.BeanReader
-
public class BeanReader extends ValueReader
Class that contains information about dynamically introspected Bean types, to be able to deserialize (read) JSON into a POJO and serialize (write) POJO as JSON.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Map<java.lang.String,java.lang.String>
_aliasMapping
Mapping of aliased names to primary names (direct linkage unfortunately impractical due to implementation limits).protected java.lang.reflect.Constructor<?>
_defaultCtor
protected java.util.Set<java.lang.String>
_ignorableNames
protected java.lang.reflect.Constructor<?>
_longCtor
protected java.util.Map<java.lang.String,BeanPropertyReader>
_propsByName
protected java.lang.reflect.Constructor<?>
_stringCtor
-
Fields inherited from class com.fasterxml.jackson.jr.ob.api.ValueReader
_valueType
-
-
Constructor Summary
Constructors Constructor Description BeanReader(java.lang.Class<?> type, java.util.Map<java.lang.String,BeanPropertyReader> props, java.lang.reflect.Constructor<?> defaultCtor, java.lang.reflect.Constructor<?> stringCtor, java.lang.reflect.Constructor<?> longCtor)
Deprecated.BeanReader(java.lang.Class<?> type, java.util.Map<java.lang.String,BeanPropertyReader> props, java.lang.reflect.Constructor<?> defaultCtor, java.lang.reflect.Constructor<?> stringCtor, java.lang.reflect.Constructor<?> longCtor, java.util.Set<java.lang.String> ignorableNames, java.util.Map<java.lang.String,java.lang.String> aliasMapping)
Constructors used for deserialization use case
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.io.IOException
_reportProblem(com.fasterxml.jackson.core.JsonParser p)
protected java.lang.Object
create()
protected java.lang.Object
create(long l)
protected java.lang.Object
create(java.lang.String str)
BeanPropertyReader
findProperty(java.lang.String name)
protected void
handleUnknown(JSONReader reader, com.fasterxml.jackson.core.JsonParser parser, java.lang.String fieldName)
java.util.Map<java.lang.String,BeanPropertyReader>
propertiesByName()
java.lang.Object
read(JSONReader r, com.fasterxml.jackson.core.JsonParser p)
Method used for deserialization; will read an instance of the bean type using given parser.java.lang.Object
readNext(JSONReader r, com.fasterxml.jackson.core.JsonParser p)
Method called to deserialize value of type supported by this reader, using given parser.-
Methods inherited from class com.fasterxml.jackson.jr.ob.api.ValueReader
_tokenDesc, _tokenDesc, valueType
-
-
-
-
Field Detail
-
_propsByName
protected final java.util.Map<java.lang.String,BeanPropertyReader> _propsByName
-
_aliasMapping
protected final java.util.Map<java.lang.String,java.lang.String> _aliasMapping
Mapping of aliased names to primary names (direct linkage unfortunately impractical due to implementation limits).- Since:
- 2.11
-
_ignorableNames
protected final java.util.Set<java.lang.String> _ignorableNames
-
_defaultCtor
protected final java.lang.reflect.Constructor<?> _defaultCtor
-
_stringCtor
protected final java.lang.reflect.Constructor<?> _stringCtor
-
_longCtor
protected final java.lang.reflect.Constructor<?> _longCtor
-
-
Constructor Detail
-
BeanReader
public BeanReader(java.lang.Class<?> type, java.util.Map<java.lang.String,BeanPropertyReader> props, java.lang.reflect.Constructor<?> defaultCtor, java.lang.reflect.Constructor<?> stringCtor, java.lang.reflect.Constructor<?> longCtor, java.util.Set<java.lang.String> ignorableNames, java.util.Map<java.lang.String,java.lang.String> aliasMapping)
Constructors used for deserialization use case
-
BeanReader
@Deprecated public BeanReader(java.lang.Class<?> type, java.util.Map<java.lang.String,BeanPropertyReader> props, java.lang.reflect.Constructor<?> defaultCtor, java.lang.reflect.Constructor<?> stringCtor, java.lang.reflect.Constructor<?> longCtor)
Deprecated.
-
-
Method Detail
-
propertiesByName
public java.util.Map<java.lang.String,BeanPropertyReader> propertiesByName()
-
findProperty
public BeanPropertyReader findProperty(java.lang.String name)
-
readNext
public java.lang.Object readNext(JSONReader r, com.fasterxml.jackson.core.JsonParser p) throws java.io.IOException
Description copied from class:ValueReader
Method called to deserialize value of type supported by this reader, using given parser. Parser is not yet positioned to the (first) token of the value to read and needs to be advanced.Default implementation simply calls `p.nextToken()` first, then calls {#link
ValueReader.read(JSONReader, JsonParser)
, but some implementations may decide to implement this differently to use (slightly) more efficient accessor inJsonParser
, likeJsonParser.nextIntValue(int)
.- Overrides:
readNext
in classValueReader
- Parameters:
r
- Context object that allows calling other read methods for contained values of different types (for example for collection readers).p
- Underlying parser used for reading decoded token stream- Throws:
java.io.IOException
-
read
public java.lang.Object read(JSONReader r, com.fasterxml.jackson.core.JsonParser p) throws java.io.IOException
Method used for deserialization; will read an instance of the bean type using given parser.- Specified by:
read
in classValueReader
- Parameters:
r
- Context object that allows calling other read methods for contained values of different types (for example for collection readers).p
- Underlying parser used for reading decoded token stream- Throws:
java.io.IOException
-
create
protected java.lang.Object create() throws java.lang.Exception
- Throws:
java.lang.Exception
-
create
protected java.lang.Object create(java.lang.String str) throws java.lang.Exception
- Throws:
java.lang.Exception
-
create
protected java.lang.Object create(long l) throws java.lang.Exception
- Throws:
java.lang.Exception
-
handleUnknown
protected void handleUnknown(JSONReader reader, com.fasterxml.jackson.core.JsonParser parser, java.lang.String fieldName) throws java.io.IOException
- Throws:
java.io.IOException
-
_reportProblem
protected java.io.IOException _reportProblem(com.fasterxml.jackson.core.JsonParser p)
-
-