org.codehaus.jackson.map.deser
Class StdDeserializer<T>
java.lang.Object
org.codehaus.jackson.map.JsonDeserializer<T>
org.codehaus.jackson.map.deser.StdDeserializer<T>
- Direct Known Subclasses:
- BeanDeserializer, ContainerDeserializer, DomElementJsonDeserializer, EnumMapDeserializer, EnumSetDeserializer, JsonNodeDeserializer, StdScalarDeserializer, UntypedObjectDeserializer, XmlAdapterJsonDeserializer
public abstract class StdDeserializer<T>
- extends JsonDeserializer<T>
Base class for common deserializers. Contains shared
base functionality for dealing with primitive values, such
as (re)parsing from String.
|
Field Summary |
protected Class<?> |
_valueClass
Type of values this deserializer handles: sometimes
exact types, other time most specific supertype of
types deserializer handles (which may be as generic
as Object in some case) |
|
Method Summary |
protected boolean |
_parseBoolean(JsonParser jp,
DeserializationContext ctxt)
|
protected Date |
_parseDate(JsonParser jp,
DeserializationContext ctxt)
|
protected Double |
_parseDouble(JsonParser jp,
DeserializationContext ctxt)
|
protected double |
_parseDoublePrimitive(JsonParser jp,
DeserializationContext ctxt)
|
protected Float |
_parseFloat(JsonParser jp,
DeserializationContext ctxt)
|
protected float |
_parseFloatPrimitive(JsonParser jp,
DeserializationContext ctxt)
|
protected Integer |
_parseInteger(JsonParser jp,
DeserializationContext ctxt)
|
protected int |
_parseIntPrimitive(JsonParser jp,
DeserializationContext ctxt)
|
protected Long |
_parseLong(JsonParser jp,
DeserializationContext ctxt)
|
protected long |
_parseLongPrimitive(JsonParser jp,
DeserializationContext ctxt)
|
protected Short |
_parseShort(JsonParser jp,
DeserializationContext ctxt)
|
protected short |
_parseShortPrimitive(JsonParser jp,
DeserializationContext ctxt)
|
Object |
deserializeWithType(JsonParser jp,
DeserializationContext ctxt,
TypeDeserializer typeDeserializer)
Base implementation that does not assume specific type
inclusion mechanism. |
protected JsonDeserializer<Object> |
findDeserializer(DeserializationConfig config,
DeserializerProvider provider,
JavaType type,
String propertyName,
Map<JavaType,JsonDeserializer<Object>> seen)
Helper method used to locate deserializers for properties the
type this deserializer handles contains (usually for properties of
bean types) |
Class<?> |
getValueClass()
|
JavaType |
getValueType()
Exact structured type deserializer handles, if known. |
protected void |
handleUnknownProperty(JsonParser jp,
DeserializationContext ctxt,
Object instanceOrClass,
String propName)
Method called to deal with a property that did not map to a known
Bean property. |
protected void |
reportUnknownProperty(DeserializationContext ctxt,
Object instanceOrClass,
String fieldName)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_valueClass
protected final Class<?> _valueClass
- Type of values this deserializer handles: sometimes
exact types, other time most specific supertype of
types deserializer handles (which may be as generic
as
Object in some case)
StdDeserializer
protected StdDeserializer(Class<?> vc)
getValueClass
public Class<?> getValueClass()
getValueType
public JavaType getValueType()
- Exact structured type deserializer handles, if known.
Default implementation just returns null.
deserializeWithType
public Object deserializeWithType(JsonParser jp,
DeserializationContext ctxt,
TypeDeserializer typeDeserializer)
throws IOException,
JsonProcessingException
- Base implementation that does not assume specific type
inclusion mechanism. Sub-classes are expected to override
this method if they are to handle type information.
- Overrides:
deserializeWithType in class JsonDeserializer<T>
typeDeserializer - Deserializer to use for handling type information
- Throws:
IOException
JsonProcessingException
_parseBoolean
protected final boolean _parseBoolean(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseShort
protected final Short _parseShort(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseShortPrimitive
protected final short _parseShortPrimitive(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseIntPrimitive
protected final int _parseIntPrimitive(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseInteger
protected final Integer _parseInteger(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseLong
protected final Long _parseLong(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseLongPrimitive
protected final long _parseLongPrimitive(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseFloat
protected final Float _parseFloat(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseFloatPrimitive
protected final float _parseFloatPrimitive(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseDouble
protected final Double _parseDouble(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseDoublePrimitive
protected final double _parseDoublePrimitive(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
_parseDate
protected Date _parseDate(JsonParser jp,
DeserializationContext ctxt)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException
findDeserializer
protected JsonDeserializer<Object> findDeserializer(DeserializationConfig config,
DeserializerProvider provider,
JavaType type,
String propertyName,
Map<JavaType,JsonDeserializer<Object>> seen)
throws JsonMappingException
- Helper method used to locate deserializers for properties the
type this deserializer handles contains (usually for properties of
bean types)
- Parameters:
type - Type of property to deserialize
- Throws:
JsonMappingException
handleUnknownProperty
protected void handleUnknownProperty(JsonParser jp,
DeserializationContext ctxt,
Object instanceOrClass,
String propName)
throws IOException,
JsonProcessingException
- Method called to deal with a property that did not map to a known
Bean property. Method can deal with the problem as it sees fit (ignore,
throw exception); but if it does return, it has to skip the matching
Json content parser has.
NOTE: method signature was changed in version 1.5; explicit JsonParser
must be passed since it may be something other than what
context has. Prior versions did not include the first parameter.
- Parameters:
jp - Parser that points to value of the unknown propertyctxt - Context for deserialization; allows access to the parser,
error reporting functionalityinstanceOrClass - Instance that is being populated by this
deserializer, or if not known, Class that would be instantiated.
If null, will assume type is what getValueClass() returns.propName - Name of the property that can not be mapped
- Throws:
IOException
JsonProcessingException
reportUnknownProperty
protected void reportUnknownProperty(DeserializationContext ctxt,
Object instanceOrClass,
String fieldName)
throws IOException,
JsonProcessingException
- Throws:
IOException
JsonProcessingException