Class StdKeyDeserializer
- java.lang.Object
-
- com.fasterxml.jackson.databind.KeyDeserializer
-
- com.fasterxml.jackson.databind.deser.std.StdKeyDeserializer
-
- All Implemented Interfaces:
java.io.Serializable
public class StdKeyDeserializer extends KeyDeserializer implements java.io.Serializable
DefaultKeyDeserializer
implementation used for mostMap
types Jackson supports. Implemented as "chameleon" (or swiss pocket knife) class; not particularly elegant, but helps reduce number of classes and jar size (class metadata adds significant per-class overhead; much more than bytecode).- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.KeyDeserializer
KeyDeserializer.None
-
-
Field Summary
Fields Modifier and Type Field Description protected FromStringDeserializer<?>
_deser
Some types that are deserialized using a helper deserializer.protected java.lang.Class<?>
_keyClass
protected int
_kind
static int
TYPE_BOOLEAN
static int
TYPE_BYTE
static int
TYPE_BYTE_ARRAY
static int
TYPE_CALENDAR
static int
TYPE_CHAR
static int
TYPE_CLASS
static int
TYPE_CURRENCY
static int
TYPE_DATE
static int
TYPE_DOUBLE
static int
TYPE_FLOAT
static int
TYPE_INT
static int
TYPE_LOCALE
static int
TYPE_LONG
static int
TYPE_SHORT
static int
TYPE_URI
static int
TYPE_URL
static int
TYPE_UUID
-
Constructor Summary
Constructors Modifier Constructor Description protected
StdKeyDeserializer(int kind, java.lang.Class<?> cls)
protected
StdKeyDeserializer(int kind, java.lang.Class<?> cls, FromStringDeserializer<?> deser)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.Object
_parse(java.lang.String key, DeserializationContext ctxt)
protected double
_parseDouble(java.lang.String key)
protected int
_parseInt(java.lang.String key)
protected long
_parseLong(java.lang.String key)
protected java.lang.Object
_weirdKey(DeserializationContext ctxt, java.lang.String key, java.lang.Exception e)
java.lang.Object
deserializeKey(java.lang.String key, DeserializationContext ctxt)
Method called to deserialize aMap
key from JSON property name.static StdKeyDeserializer
forType(java.lang.Class<?> raw)
java.lang.Class<?>
getKeyClass()
-
-
-
Field Detail
-
TYPE_BOOLEAN
public static final int TYPE_BOOLEAN
- See Also:
- Constant Field Values
-
TYPE_BYTE
public static final int TYPE_BYTE
- See Also:
- Constant Field Values
-
TYPE_SHORT
public static final int TYPE_SHORT
- See Also:
- Constant Field Values
-
TYPE_CHAR
public static final int TYPE_CHAR
- See Also:
- Constant Field Values
-
TYPE_INT
public static final int TYPE_INT
- See Also:
- Constant Field Values
-
TYPE_LONG
public static final int TYPE_LONG
- See Also:
- Constant Field Values
-
TYPE_FLOAT
public static final int TYPE_FLOAT
- See Also:
- Constant Field Values
-
TYPE_DOUBLE
public static final int TYPE_DOUBLE
- See Also:
- Constant Field Values
-
TYPE_LOCALE
public static final int TYPE_LOCALE
- See Also:
- Constant Field Values
-
TYPE_DATE
public static final int TYPE_DATE
- See Also:
- Constant Field Values
-
TYPE_CALENDAR
public static final int TYPE_CALENDAR
- See Also:
- Constant Field Values
-
TYPE_UUID
public static final int TYPE_UUID
- See Also:
- Constant Field Values
-
TYPE_URI
public static final int TYPE_URI
- See Also:
- Constant Field Values
-
TYPE_URL
public static final int TYPE_URL
- See Also:
- Constant Field Values
-
TYPE_CLASS
public static final int TYPE_CLASS
- See Also:
- Constant Field Values
-
TYPE_CURRENCY
public static final int TYPE_CURRENCY
- See Also:
- Constant Field Values
-
TYPE_BYTE_ARRAY
public static final int TYPE_BYTE_ARRAY
- See Also:
- Constant Field Values
-
_kind
protected final int _kind
-
_keyClass
protected final java.lang.Class<?> _keyClass
-
_deser
protected final FromStringDeserializer<?> _deser
Some types that are deserialized using a helper deserializer.
-
-
Constructor Detail
-
StdKeyDeserializer
protected StdKeyDeserializer(int kind, java.lang.Class<?> cls)
-
StdKeyDeserializer
protected StdKeyDeserializer(int kind, java.lang.Class<?> cls, FromStringDeserializer<?> deser)
-
-
Method Detail
-
forType
public static StdKeyDeserializer forType(java.lang.Class<?> raw)
-
deserializeKey
public java.lang.Object deserializeKey(java.lang.String key, DeserializationContext ctxt) throws java.io.IOException
Description copied from class:KeyDeserializer
Method called to deserialize aMap
key from JSON property name.- Specified by:
deserializeKey
in classKeyDeserializer
- Throws:
java.io.IOException
-
getKeyClass
public java.lang.Class<?> getKeyClass()
-
_parse
protected java.lang.Object _parse(java.lang.String key, DeserializationContext ctxt) throws java.lang.Exception
- Throws:
java.lang.Exception
-
_parseInt
protected int _parseInt(java.lang.String key) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
_parseLong
protected long _parseLong(java.lang.String key) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
_parseDouble
protected double _parseDouble(java.lang.String key) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
_weirdKey
protected java.lang.Object _weirdKey(DeserializationContext ctxt, java.lang.String key, java.lang.Exception e) throws java.io.IOException
- Throws:
java.io.IOException
-
-