org.codehaus.jackson.map.deser.std
Class FromStringDeserializer<T>

java.lang.Object
  extended by org.codehaus.jackson.map.JsonDeserializer<T>
      extended by org.codehaus.jackson.map.deser.std.StdDeserializer<T>
          extended by org.codehaus.jackson.map.deser.std.StdScalarDeserializer<T>
              extended by org.codehaus.jackson.map.deser.std.FromStringDeserializer<T>
Direct Known Subclasses:
CoreXMLDeserializers.DurationDeserializer, CoreXMLDeserializers.QNameDeserializer, DOMDeserializer, FromStringDeserializer, FromStringDeserializer.CurrencyDeserializer, FromStringDeserializer.InetAddressDeserializer, FromStringDeserializer.LocaleDeserializer, FromStringDeserializer.PatternDeserializer, FromStringDeserializer.TimeZoneDeserializer, FromStringDeserializer.URIDeserializer, FromStringDeserializer.URLDeserializer, FromStringDeserializer.UUIDDeserializer

public abstract class FromStringDeserializer<T>
extends StdScalarDeserializer<T>

Base class for simple deserializer which only accept JSON String values as the source.

Since:
1.9 (moved from higher-level package)

Nested Class Summary
static class FromStringDeserializer.CurrencyDeserializer
           
protected static class FromStringDeserializer.InetAddressDeserializer
          As per [JACKSON-484], also need special handling for InetAddress...
protected static class FromStringDeserializer.LocaleDeserializer
          Kept protected as it's not meant to be extensible at this point
static class FromStringDeserializer.PatternDeserializer
           
protected static class FromStringDeserializer.TimeZoneDeserializer
          As per [JACKSON-522], also need special handling for InetAddress...
static class FromStringDeserializer.URIDeserializer
           
static class FromStringDeserializer.URLDeserializer
           
static class FromStringDeserializer.UUIDDeserializer
           
 
Nested classes/interfaces inherited from class org.codehaus.jackson.map.deser.std.StdDeserializer
StdDeserializer.BigDecimalDeserializer, StdDeserializer.BigIntegerDeserializer, StdDeserializer.BooleanDeserializer, StdDeserializer.ByteDeserializer, StdDeserializer.CharacterDeserializer, StdDeserializer.DoubleDeserializer, StdDeserializer.FloatDeserializer, StdDeserializer.IntegerDeserializer, StdDeserializer.LongDeserializer, StdDeserializer.NumberDeserializer, StdDeserializer.PrimitiveOrWrapperDeserializer<T>, StdDeserializer.ShortDeserializer, StdDeserializer.SqlDateDeserializer, StdDeserializer.StackTraceElementDeserializer
 
Nested classes/interfaces inherited from class org.codehaus.jackson.map.JsonDeserializer
JsonDeserializer.None
 
Field Summary
 
Fields inherited from class org.codehaus.jackson.map.deser.std.StdDeserializer
_valueClass
 
Constructor Summary
protected FromStringDeserializer(Class<?> vc)
           
 
Method Summary
protected abstract  T _deserialize(String value, DeserializationContext ctxt)
           
protected  T _deserializeEmbedded(Object ob, DeserializationContext ctxt)
           
static Iterable<FromStringDeserializer<?>> all()
           
 T deserialize(JsonParser jp, DeserializationContext ctxt)
          Method that can be called to ask implementation to deserialize JSON content into the value type this serializer handles.
 
Methods inherited from class org.codehaus.jackson.map.deser.std.StdScalarDeserializer
deserializeWithType
 
Methods inherited from class org.codehaus.jackson.map.deser.std.StdDeserializer
_parseBoolean, _parseBooleanFromNumber, _parseBooleanPrimitive, _parseByte, _parseDate, _parseDouble, _parseDoublePrimitive, _parseFloat, _parseFloatPrimitive, _parseInteger, _parseIntPrimitive, _parseLong, _parseLongPrimitive, _parseShort, _parseShortPrimitive, findDeserializer, getValueClass, getValueType, handleUnknownProperty, isDefaultSerializer, parseDouble, reportUnknownProperty
 
Methods inherited from class org.codehaus.jackson.map.JsonDeserializer
deserialize, getEmptyValue, getNullValue, unwrappingDeserializer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FromStringDeserializer

protected FromStringDeserializer(Class<?> vc)
Method Detail

all

public static Iterable<FromStringDeserializer<?>> all()

deserialize

public final T deserialize(JsonParser jp,
                           DeserializationContext ctxt)
                    throws IOException,
                           JsonProcessingException
Description copied from class: JsonDeserializer
Method that can be called to ask implementation to deserialize JSON content into the value type this serializer handles. Returned instance is to be constructed by method itself.

Pre-condition for this method is that the parser points to the first event that is part of value to deserializer (and which is never JSON 'null' literal, more on this below): for simple types it may be the only value; and for structured types the Object start marker. Post-condition is that the parser will point to the last event that is part of deserialized value (or in case deserialization fails, event that was not recognized or usable, which may be the same event as the one it pointed to upon call).

Note that this method is never called for JSON null literal, and thus deserializers need (and should) not check for it.

Specified by:
deserialize in class JsonDeserializer<T>
Parameters:
jp - Parsed used for reading JSON content
ctxt - Context that can be used to access information about this deserialization activity.
Returns:
Deserializer value
Throws:
IOException
JsonProcessingException

_deserialize

protected abstract T _deserialize(String value,
                                  DeserializationContext ctxt)
                           throws IOException,
                                  JsonProcessingException
Throws:
IOException
JsonProcessingException

_deserializeEmbedded

protected T _deserializeEmbedded(Object ob,
                                 DeserializationContext ctxt)
                          throws IOException,
                                 JsonProcessingException
Throws:
IOException
JsonProcessingException