# Package com.fasterxml.jackson.databind.jsontype

Package that contains interfaces that define how to implement functionality for dynamically resolving type during deserialization.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  TypeIdResolver | Interface that defines standard API for converting types to type identifiers and vice versa.
  TypeResolverBuilder<T extends TypeResolverBuilder<T>> | Interface that defines builders that are configured based on annotations (like `JsonTypeInfo` or JAXB annotations), and produce type serializers and deserializers used for handling type information embedded in JSON to allow for safe polymorphic type handling.

- Class Summary
  Class | Description
  --- | ---
  BasicPolymorphicTypeValidator | Standard `BasicPolymorphicTypeValidator` implementation that users may want to use for constructing validators based on simple class hierarchy and/or name patterns to allow and/or deny certain subtypes.
  BasicPolymorphicTypeValidator.Builder | Builder class for configuring and constructing immutable `BasicPolymorphicTypeValidator` instances.
  BasicPolymorphicTypeValidator.NameMatcher | General matcher interface (predicate) for validating unresolved subclass class name.
  BasicPolymorphicTypeValidator.TypeMatcher | General matcher interface (predicate) for validating class values (base type or resolved subtype)
  DefaultBaseTypeLimitingValidator | `PolymorphicTypeValidator` that will only allow polymorphic handling if the base type is NOT one of potential dangerous base types (see `DefaultBaseTypeLimitingValidator.isUnsafeBaseType(com.fasterxml.jackson.databind.cfg.MapperConfig<?>, com.fasterxml.jackson.databind.JavaType)` for specific list of such base types).
  NamedType | Simple container class for types with optional logical name, used as external identifier
  PolymorphicTypeValidator | Interface for classes that handle validation of class-name - based subtypes used with Polymorphic Deserialization: both via "default typing" and explicit `@JsonTypeInfo` when using Java Class name as Type Identifier.
  PolymorphicTypeValidator.Base | Shared base class with partial implementation (with all validation calls returning `PolymorphicTypeValidator.Validity.INDETERMINATE`) and convenience methods for indicating failure reasons.
  SubtypeResolver | Helper object used for handling registration on resolving of super-types to sub-types.
  TypeDeserializer | Interface for deserializing type information from JSON content, to type-safely deserialize data into correct polymorphic instance (when type inclusion has been enabled for type handled).
  TypeSerializer | Interface for serializing type information regarding instances of specified base type (super class), so that exact subtype can be properly deserialized later on.

- Enum Summary
  Enum | Description
  --- | ---
  PolymorphicTypeValidator.Validity | Definition of return values to indicate determination regarding validity.

## Package com.fasterxml.jackson.databind.jsontype Description

Package that contains interfaces that define how to implement functionality for dynamically resolving type during deserialization. This is needed for complete handling of polymorphic types, where actual type cannot be determined statically (declared type is a supertype of actual polymorphic serialized types).

Copyright © 2008–2020 FasterXML. All rights reserved.