TypeNameIdResolver (Jackson JSON Processor)
Date: 2013-07-14

org.codehaus.jackson.map.jsontype.impl

## Class TypeNameIdResolver

- java.lang.Object
- - org.codehaus.jackson.map.jsontype.impl.TypeIdResolverBase
  - - org.codehaus.jackson.map.jsontype.impl.TypeNameIdResolver

- All Implemented Interfaces:
    TypeIdResolver

      public class TypeNameIdResolver
      extends TypeIdResolverBase

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `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 org.codehaus.jackson.map.jsontype.impl.TypeIdResolverBase

      `_baseType, _typeFactory`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `TypeNameIdResolver(MapperConfig<?> config, JavaType baseType, HashMap<String,String> typeToId, HashMap<String,JavaType> idToType)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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 org.codehaus.jackson.map.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

      Since:
        1.8

    - #### _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