## Uses of Class
com.fasterxml.jackson.databind.jsontype.TypeDeserializer

- Packages that use TypeDeserializer
  Package | Description
  --- | ---
  com.fasterxml.jackson.databind | Contains basic mapper (conversion) functionality that allows for converting between regular streaming json content and Java objects (beans or Tree Model: support for both is via `ObjectMapper` class, as well as convenience methods included in `JsonParser`
  com.fasterxml.jackson.databind.deser | Contains implementation classes of deserialization part of data binding.
  com.fasterxml.jackson.databind.deser.impl | Contains those implementation classes of deserialization part of data binding that are not considered part of public or semi-public interfaces.
  com.fasterxml.jackson.databind.deser.std | Contains public standard implementations of abstraction that Jackson uses.
  com.fasterxml.jackson.databind.jsontype | Package that contains interfaces that define how to implement functionality for dynamically resolving type during deserialization.
  com.fasterxml.jackson.databind.jsontype.impl | Package that contains standard implementations for `TypeResolverBuilder` and `TypeIdResolver`.
  com.fasterxml.jackson.databind.module | Package that contains classes and interfaces to help implement custom extension `Module`s (which are registered using `ObjectMapper.registerModule(com.fasterxml.jackson.databind.Module)`.

- - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind

    Methods in com.fasterxml.jackson.databind that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | ObjectMapper.DefaultTypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes)`

    Methods in com.fasterxml.jackson.databind with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `Object` | JsonDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Deserialization called when type being deserialized is defined to contain additional type identifier, to allow for correctly instantiating correct subtype.

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.deser

    Fields in com.fasterxml.jackson.databind.deser declared as TypeDeserializer
    Modifier and Type | Field and Description
    --- | ---
    `protected TypeDeserializer` | SettableBeanProperty.`_valueTypeDeserializer` If value will contain type information (to support polymorphic handling), this is the type deserializer used to handle type resolution.
    `protected TypeDeserializer` | SettableAnyProperty.`_valueTypeDeserializer`

    Methods in com.fasterxml.jackson.databind.deser that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | BasicDeserializerFactory.`findPropertyContentTypeDeserializer(DeserializationConfig config, JavaType containerType, AnnotatedMember propertyEntity)` Method called to find and create a type information deserializer for values of given container (list, array, map) property, if one is needed.
    `TypeDeserializer` | BasicDeserializerFactory.`findPropertyTypeDeserializer(DeserializationConfig config, JavaType baseType, AnnotatedMember annotated)` Method called to create a type information deserializer for values of given non-container property, if one is needed.
    `abstract TypeDeserializer` | DeserializerFactory.`findTypeDeserializer(DeserializationConfig config, JavaType baseType)` Method called to find and create a type information deserializer for given base type, if one is needed.
    `TypeDeserializer` | BasicDeserializerFactory.`findTypeDeserializer(DeserializationConfig config, JavaType baseType)`
    `TypeDeserializer` | SettableBeanProperty.`getValueTypeDeserializer()`

    Methods in com.fasterxml.jackson.databind.deser with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `protected JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomArrayDeserializer(ArrayType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomCollectionDeserializer(CollectionType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomMapDeserializer(MapType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `protected JsonDeserializer<?>` | BasicDeserializerFactory.`_findCustomMapLikeDeserializer(MapLikeType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `Object` | BeanDeserializerBase.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | AbstractDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findArrayDeserializer(ArrayType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified array type.
    `JsonDeserializer<?>` | Deserializers.Base.`findArrayDeserializer(ArrayType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified `Collection` (List, Set etc) type.
    `JsonDeserializer<?>` | Deserializers.Base.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified "Collection-like" type (one that acts like `Collection` but does not implement it).
    `JsonDeserializer<?>` | Deserializers.Base.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findMapDeserializer(MapType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate deserializer for specified `Map` type.
    `JsonDeserializer<?>` | Deserializers.Base.`findMapDeserializer(MapType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | Deserializers.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)` Method called to locate serializer for specified "Map-like" type (one that acts like `Map` but does not implement it).
    `JsonDeserializer<?>` | Deserializers.Base.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`

    Constructors in com.fasterxml.jackson.databind.deser with parameters of type TypeDeserializer
    Constructor and Description
    `CreatorProperty(PropertyName name, JavaType type, PropertyName wrapperName, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedParameter param, int index, Object injectableValueId, PropertyMetadata metadata)`
    `CreatorProperty(String name, JavaType type, PropertyName wrapperName, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedParameter param, int index, Object injectableValueId, boolean isRequired)` Deprecated.
    `SettableAnyProperty(BeanProperty property, AnnotatedMethod setter, JavaType type, JsonDeserializer<Object> valueDeser, TypeDeserializer typeDeser)`
    `SettableAnyProperty(BeanProperty property, Method rawSetter, JavaType type, JsonDeserializer<Object> valueDeser, TypeDeserializer typeDeser)`
    `SettableBeanProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations)`
    `SettableBeanProperty(PropertyName propName, JavaType type, PropertyName wrapper, TypeDeserializer typeDeser, Annotations contextAnnotations, PropertyMetadata metadata)`
    `SettableBeanProperty(String propName, JavaType type, PropertyName wrapper, TypeDeserializer typeDeser, Annotations contextAnnotations)` Deprecated.
    `SettableBeanProperty(String propName, JavaType type, PropertyName wrapper, TypeDeserializer typeDeser, Annotations contextAnnotations, boolean isRequired)` Deprecated.

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.deser.impl

    Methods in com.fasterxml.jackson.databind.deser.impl with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `void` | ExternalTypeHandler.Builder.`addExternal(SettableBeanProperty property, TypeDeserializer typeDeser)`
    `Object` | TypeWrappedDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`

    Constructors in com.fasterxml.jackson.databind.deser.impl with parameters of type TypeDeserializer
    Constructor and Description
    `FieldProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedField field)`
    `MethodProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`
    `SetterlessProperty(BeanPropertyDefinition propDef, JavaType type, TypeDeserializer typeDeser, Annotations contextAnnotations, AnnotatedMethod method)`
    `TypeWrappedDeserializer(TypeDeserializer typeDeser, JsonDeserializer<Object> deser)`

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.deser.std

    Fields in com.fasterxml.jackson.databind.deser.std declared as TypeDeserializer
    Modifier and Type | Field and Description
    --- | ---
    `protected TypeDeserializer` | ObjectArrayDeserializer.`_elementTypeDeserializer` If element instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | MapDeserializer.`_valueTypeDeserializer` If value instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | EnumMapDeserializer.`_valueTypeDeserializer` If value instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | CollectionDeserializer.`_valueTypeDeserializer` If element instances have polymorphic type information, this is the type deserializer that can handle it
    `protected TypeDeserializer` | AtomicReferenceDeserializer.`_valueTypeDeserializer`

    Methods in com.fasterxml.jackson.databind.deser.std with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `Object` | UntypedObjectDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `String` | StringDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StringCollectionDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StringArrayDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StdScalarDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | StdDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` Base implementation that does not assume specific type inclusion mechanism.
    `Object` | StdDelegatingDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | PrimitiveArrayDeserializers.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object[]` | ObjectArrayDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Boolean` | NumberDeserializers.BooleanDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Integer` | NumberDeserializers.IntegerDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Double` | NumberDeserializers.DoubleDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | NumberDeserializers.NumberDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)` As mentioned in class Javadoc, there is additional complexity in handling potentially mixed type information here.
    `Object` | NullifyingDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | MapDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | EnumSetDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | EnumMapDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | DelegatingDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | CollectionDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object[]` | AtomicReferenceDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `Object` | ArrayBlockingQueueDeserializer.`deserializeWithType(JsonParser jp, DeserializationContext ctxt, TypeDeserializer typeDeserializer)`
    `ObjectArrayDeserializer` | ObjectArrayDeserializer.`withDeserializer(TypeDeserializer elemTypeDeser, JsonDeserializer<?> elemDeser)` Overridable fluent-factory method used to create contextual instances
    `EnumMapDeserializer` | EnumMapDeserializer.`withResolved(JsonDeserializer<?> keyDeserializer, JsonDeserializer<?> valueDeserializer, TypeDeserializer valueTypeDeser)`
    `protected CollectionDeserializer` | CollectionDeserializer.`withResolved(JsonDeserializer<?> dd, JsonDeserializer<?> vd, TypeDeserializer vtd)` Fluent-factory method call to construct contextual instance.
    `protected ArrayBlockingQueueDeserializer` | ArrayBlockingQueueDeserializer.`withResolved(JsonDeserializer<?> dd, JsonDeserializer<?> vd, TypeDeserializer vtd)` Fluent-factory method call to construct contextual instance.
    `protected MapDeserializer` | MapDeserializer.`withResolved(KeyDeserializer keyDeser, TypeDeserializer valueTypeDeser, JsonDeserializer<?> valueDeser, HashSet<String> ignorable)` Fluent factory method used to create a copy with slightly different settings.
    `AtomicReferenceDeserializer` | AtomicReferenceDeserializer.`withResolved(TypeDeserializer typeDeser, JsonDeserializer<?> valueDeser)`

    Constructors in com.fasterxml.jackson.databind.deser.std with parameters of type TypeDeserializer
    Constructor and Description
    `ArrayBlockingQueueDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, ValueInstantiator valueInstantiator, JsonDeserializer<Object> delegateDeser)` Constructor used when creating contextualized instances.
    `AtomicReferenceDeserializer(JavaType referencedType, TypeDeserializer typeDeser, JsonDeserializer<?> deser)`
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, ValueInstantiator valueInstantiator)` Constructor for context-free instances, where we do not yet know which property is using this deserializer.
    `CollectionDeserializer(JavaType collectionType, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, ValueInstantiator valueInstantiator, JsonDeserializer<Object> delegateDeser)` Constructor used when creating contextualized instances.
    `EnumMapDeserializer(JavaType mapType, JsonDeserializer<?> keyDeserializer, JsonDeserializer<?> valueDeser, TypeDeserializer valueTypeDeser)`
    `MapDeserializer(JavaType mapType, ValueInstantiator valueInstantiator, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser)`
    `MapDeserializer(MapDeserializer src, KeyDeserializer keyDeser, JsonDeserializer<Object> valueDeser, TypeDeserializer valueTypeDeser, HashSet<String> ignorable)`
    `ObjectArrayDeserializer(ArrayType arrayType, JsonDeserializer<Object> elemDeser, TypeDeserializer elemTypeDeser)`

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.jsontype

    Methods in com.fasterxml.jackson.databind.jsontype that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | TypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes)` Method for building type deserializer based on current configuration of this builder.
    `abstract TypeDeserializer` | TypeDeserializer.`forProperty(BeanProperty prop)` Method called to create contextual version, to be used for values of given property.

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.jsontype.impl

    Subclasses of TypeDeserializer in com.fasterxml.jackson.databind.jsontype.impl
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AsArrayTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.WRAPPER_ARRAY` inclusion mechanism.
    `class` | `AsExternalTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.EXTERNAL_PROPERTY` inclusion mechanism.
    `class` | `AsPropertyTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.PROPERTY` inclusion mechanism.
    `class` | `AsWrapperTypeDeserializer` Type deserializer used with `JsonTypeInfo.As.WRAPPER_OBJECT` inclusion mechanism.
    `class` | `TypeDeserializerBase` Base class for all standard Jackson `TypeDeserializer`s.

    Methods in com.fasterxml.jackson.databind.jsontype.impl that return TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `TypeDeserializer` | StdTypeResolverBuilder.`buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes)`
    `abstract TypeDeserializer` | TypeDeserializerBase.`forProperty(BeanProperty prop)`
    `TypeDeserializer` | AsWrapperTypeDeserializer.`forProperty(BeanProperty prop)`
    `TypeDeserializer` | AsPropertyTypeDeserializer.`forProperty(BeanProperty prop)`
    `TypeDeserializer` | AsExternalTypeDeserializer.`forProperty(BeanProperty prop)`
    `TypeDeserializer` | AsArrayTypeDeserializer.`forProperty(BeanProperty prop)`

  - ### Uses of TypeDeserializer in com.fasterxml.jackson.databind.module

    Methods in com.fasterxml.jackson.databind.module with parameters of type TypeDeserializer
    Modifier and Type | Method and Description
    --- | ---
    `JsonDeserializer<?>` | SimpleDeserializers.`findArrayDeserializer(ArrayType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findCollectionDeserializer(CollectionType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findCollectionLikeDeserializer(CollectionLikeType type, DeserializationConfig config, BeanDescription beanDesc, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findMapDeserializer(MapType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`
    `JsonDeserializer<?>` | SimpleDeserializers.`findMapLikeDeserializer(MapLikeType type, DeserializationConfig config, BeanDescription beanDesc, KeyDeserializer keyDeserializer, TypeDeserializer elementTypeDeserializer, JsonDeserializer<?> elementDeserializer)`

Copyright © 2012-2013 FasterXML. All Rights Reserved.