com.fasterxml.jackson.databind.jsontype.impl
Class TypeNameIdResolver

java.lang.Object
  extended by com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase
      extended by com.fasterxml.jackson.databind.jsontype.impl.TypeNameIdResolver
All Implemented Interfaces:
TypeIdResolver

public class TypeNameIdResolver
extends TypeIdResolverBase


Field Summary
protected  MapperConfig<?> _config
           
protected  HashMap<String,JavaType> _idToType
          Mappings from type id to JavaType, used for deserialization
protected  HashMap<String,String> _typeToId
          Mappings from class name to type id, used for serialization
 
Fields inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase
_baseType, _typeFactory
 
Constructor Summary
protected TypeNameIdResolver(MapperConfig<?> config, JavaType baseType, HashMap<String,String> typeToId, HashMap<String,JavaType> idToType)
           
 
Method Summary
protected static String _defaultTypeId(Class<?> cls)
          If no name was explicitly given for a class, we will just use non-qualified class name
static TypeNameIdResolver construct(MapperConfig<?> config, JavaType baseType, Collection<NamedType> subtypes, boolean forSer, boolean forDeser)
           
 JsonTypeInfo.Id getMechanism()
          Accessor for mechanism that this resolver uses for determining type id from type.
 String idFromValue(Object value)
          Method called to serialize type of the type of given value as a String to include in serialized JSON content.
 String idFromValueAndType(Object value, Class<?> type)
          Alternative method used for determining type from combination of value and type, using suggested type (that serializer provides) and possibly value of that type.
 String toString()
           
 JavaType typeFromId(String id)
          Method called to resolve type from given type identifier.
 
Methods inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeIdResolverBase
idFromBaseType, init
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_config

protected final MapperConfig<?> _config

_typeToId

protected final HashMap<String,String> _typeToId
Mappings from class name to type id, used for serialization


_idToType

protected final HashMap<String,JavaType> _idToType
Mappings from type id to JavaType, used for deserialization

Constructor Detail

TypeNameIdResolver

protected TypeNameIdResolver(MapperConfig<?> config,
                             JavaType baseType,
                             HashMap<String,String> typeToId,
                             HashMap<String,JavaType> idToType)
Method Detail

construct

public static TypeNameIdResolver construct(MapperConfig<?> config,
                                           JavaType baseType,
                                           Collection<NamedType> subtypes,
                                           boolean forSer,
                                           boolean forDeser)

getMechanism

public JsonTypeInfo.Id getMechanism()
Description copied from interface: TypeIdResolver
Accessor for mechanism that this resolver uses for determining type id from type. Mostly informational; not required to be called or used.


idFromValue

public String idFromValue(Object value)
Description copied from interface: TypeIdResolver
Method called to serialize type of the type of given value as a String to include in serialized JSON content.


idFromValueAndType

public String idFromValueAndType(Object value,
                                 Class<?> type)
Description copied from interface: TypeIdResolver
Alternative method used for determining type from combination of value and type, using suggested type (that serializer provides) and possibly value of that type. Most common implementation will use suggested type as is.


typeFromId

public JavaType typeFromId(String id)
                    throws IllegalArgumentException
Description copied from interface: TypeIdResolver
Method called to resolve type from given type identifier.

Throws:
IllegalArgumentException

toString

public String toString()
Overrides:
toString in class Object

_defaultTypeId

protected static String _defaultTypeId(Class<?> cls)
If no name was explicitly given for a class, we will just use non-qualified class name



Copyright © 2012 fasterxml.com. All Rights Reserved.