java.lang.Object
tools.jackson.databind.jsontype.SubtypeResolver
tools.jackson.databind.jsontype.impl.StdSubtypeResolver
- All Implemented Interfaces:
Serializable,Snapshottable<SubtypeResolver>
Standard
SubtypeResolver implementation.- See Also:
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void_collectAndResolve(MapperConfig<?> config, AnnotatedClass annotatedType, NamedType namedType, AnnotationIntrospector ai, HashMap<NamedType, NamedType> collectedSubtypes) Method called to find subtypes for a specific type (class), using type (class) as the unique key (in case of conflicts).protected void_collectAndResolveByTypeId(MapperConfig<?> config, AnnotatedClass annotatedType, NamedType namedType, Set<Class<?>> typesHandled, Map<String, NamedType> byName) Method called to find subtypes for a specific type (class), using type id as the unique key (in case of conflicts).protected Collection<NamedType>Helper method used for merging explicitly named types and handled classes without explicit names.collectAndResolveSubtypesByClass(MapperConfig<?> config, AnnotatedClass type) Method for finding out all reachable subtypes for given type, such that access is by type, typically needed for serialization (converting from type to type name).collectAndResolveSubtypesByClass(MapperConfig<?> config, AnnotatedMember property, JavaType baseType) Method for finding out all reachable subtypes for a property specified by given element (method or field), such that access is by type, typically needed for serialization (converting from type to type name).collectAndResolveSubtypesByTypeId(MapperConfig<?> config, AnnotatedClass baseType) Method for finding out all reachable subtypes for given type, such that access is by type id, typically needed for deserialization (converting from type id to type).collectAndResolveSubtypesByTypeId(MapperConfig<?> config, AnnotatedMember property, JavaType baseType) Method for finding out all reachable subtypes for a property specified by given element (method or field), such that access is by type id, typically needed for deserialization (converting from type id to type).registerSubtypes(Class<?>... classes) registerSubtypes(Collection<Class<?>> subtypes) registerSubtypes(NamedType... types) Method for registering specified subtypes (possibly including type names); for type entries without name, non-qualified class name as used as name (unless overridden by annotation).snapshot()Method that has to create a new instance that contains same registration information as this instance, but is not linked to this instance.
-
Field Details
-
_registeredSubtypes
-
-
Constructor Details
-
StdSubtypeResolver
public StdSubtypeResolver() -
StdSubtypeResolver
-
-
Method Details
-
snapshot
Description copied from class:SubtypeResolverMethod that has to create a new instance that contains same registration information as this instance, but is not linked to this instance.- Specified by:
snapshotin interfaceSnapshottable<SubtypeResolver>- Specified by:
snapshotin classSubtypeResolver
-
registerSubtypes
Description copied from class:SubtypeResolverMethod for registering specified subtypes (possibly including type names); for type entries without name, non-qualified class name as used as name (unless overridden by annotation).- Specified by:
registerSubtypesin classSubtypeResolver
-
registerSubtypes
- Specified by:
registerSubtypesin classSubtypeResolver
-
registerSubtypes
- Specified by:
registerSubtypesin classSubtypeResolver
-
collectAndResolveSubtypesByClass
public Collection<NamedType> collectAndResolveSubtypesByClass(MapperConfig<?> config, AnnotatedMember property, JavaType baseType) Description copied from class:SubtypeResolverMethod for finding out all reachable subtypes for a property specified by given element (method or field), such that access is by type, typically needed for serialization (converting from type to type name).- Specified by:
collectAndResolveSubtypesByClassin classSubtypeResolverbaseType- Effective property base type to use; may differ from actual type of property; for structured types it is content (value) type and NOT structured type.
-
collectAndResolveSubtypesByClass
public Collection<NamedType> collectAndResolveSubtypesByClass(MapperConfig<?> config, AnnotatedClass type) Description copied from class:SubtypeResolverMethod for finding out all reachable subtypes for given type, such that access is by type, typically needed for serialization (converting from type to type name).- Specified by:
collectAndResolveSubtypesByClassin classSubtypeResolvertype- Effective property base type to use; may differ from actual type of property; for structured types it is content (value) type and NOT structured type.
-
collectAndResolveSubtypesByTypeId
public Collection<NamedType> collectAndResolveSubtypesByTypeId(MapperConfig<?> config, AnnotatedMember property, JavaType baseType) Description copied from class:SubtypeResolverMethod for finding out all reachable subtypes for a property specified by given element (method or field), such that access is by type id, typically needed for deserialization (converting from type id to type).- Specified by:
collectAndResolveSubtypesByTypeIdin classSubtypeResolverbaseType- Effective property base type to use; may differ from actual type of property; for structured types it is content (value) type and NOT structured type.
-
collectAndResolveSubtypesByTypeId
public Collection<NamedType> collectAndResolveSubtypesByTypeId(MapperConfig<?> config, AnnotatedClass baseType) Description copied from class:SubtypeResolverMethod for finding out all reachable subtypes for given type, such that access is by type id, typically needed for deserialization (converting from type id to type).- Specified by:
collectAndResolveSubtypesByTypeIdin classSubtypeResolverbaseType- Effective property base type to use; may differ from actual type of property; for structured types it is content (value) type and NOT structured type.
-
_collectAndResolve
protected void _collectAndResolve(MapperConfig<?> config, AnnotatedClass annotatedType, NamedType namedType, AnnotationIntrospector ai, HashMap<NamedType, NamedType> collectedSubtypes) Method called to find subtypes for a specific type (class), using type (class) as the unique key (in case of conflicts). -
_collectAndResolveByTypeId
protected void _collectAndResolveByTypeId(MapperConfig<?> config, AnnotatedClass annotatedType, NamedType namedType, Set<Class<?>> typesHandled, Map<String, NamedType> byName) Method called to find subtypes for a specific type (class), using type id as the unique key (in case of conflicts). -
_combineNamedAndUnnamed
protected Collection<NamedType> _combineNamedAndUnnamed(Class<?> rawBase, Set<Class<?>> typesHandled, Map<String, NamedType> byName) Helper method used for merging explicitly named types and handled classes without explicit names.
-