Class TypeNameIdResolver

    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected boolean _caseInsensitive  
      protected MapperConfig<?> _config  
      protected java.util.Map<java.lang.String,​JavaType> _idToType
      Mappings from type id to JavaType, used for deserialization.
      protected java.util.concurrent.ConcurrentHashMap<java.lang.String,​java.lang.String> _typeToId
      Mappings from class name to type id, used for serialization.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected TypeNameIdResolver​(MapperConfig<?> config, JavaType baseType, java.util.concurrent.ConcurrentHashMap<java.lang.String,​java.lang.String> typeToId, java.util.HashMap<java.lang.String,​JavaType> idToType)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected static java.lang.String _defaultTypeId​(java.lang.Class<?> cls)
      If no name was explicitly given for a class, we will just use non-qualified class name
      protected JavaType _typeFromId​(java.lang.String id)  
      static TypeNameIdResolver construct​(MapperConfig<?> config, JavaType baseType, java.util.Collection<NamedType> subtypes, boolean forSer, boolean forDeser)  
      java.lang.String getDescForKnownTypeIds()
      Helper method used to get a simple description of all known type ids, for use in error messages.
      com.fasterxml.jackson.annotation.JsonTypeInfo.Id getMechanism()
      Accessor for mechanism that this resolver uses for determining type id from type.
      protected java.lang.String idFromClass​(java.lang.Class<?> clazz)  
      java.lang.String idFromValue​(java.lang.Object value)
      Method called to serialize type of the type of given value as a String to include in serialized JSON content.
      java.lang.String idFromValueAndType​(java.lang.Object value, java.lang.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.
      java.lang.String toString()  
      JavaType typeFromId​(DatabindContext context, java.lang.String id)
      Method called to resolve type from given type identifier.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • _typeToId

        protected final java.util.concurrent.ConcurrentHashMap<java.lang.String,​java.lang.String> _typeToId
        Mappings from class name to type id, used for serialization.

        Since lazily constructed will require synchronization (either internal by type, or external)

      • _idToType

        protected final java.util.Map<java.lang.String,​JavaType> _idToType
        Mappings from type id to JavaType, used for deserialization.

        Eagerly constructed, not modified, can use regular unsynchronized Map.

      • _caseInsensitive

        protected final boolean _caseInsensitive
        Since:
        2.11
    • Constructor Detail

      • TypeNameIdResolver

        protected TypeNameIdResolver​(MapperConfig<?> config,
                                     JavaType baseType,
                                     java.util.concurrent.ConcurrentHashMap<java.lang.String,​java.lang.String> typeToId,
                                     java.util.HashMap<java.lang.String,​JavaType> idToType)
    • Method Detail

      • getMechanism

        public com.fasterxml.jackson.annotation.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 java.lang.String idFromValue​(java.lang.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.
      • idFromClass

        protected java.lang.String idFromClass​(java.lang.Class<?> clazz)
      • idFromValueAndType

        public java.lang.String idFromValueAndType​(java.lang.Object value,
                                                   java.lang.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

        protected JavaType _typeFromId​(java.lang.String id)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • _defaultTypeId

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