Class StdSubtypeResolver
- java.lang.Object
-
- com.fasterxml.jackson.databind.jsontype.SubtypeResolver
-
- com.fasterxml.jackson.databind.jsontype.impl.StdSubtypeResolver
-
- All Implemented Interfaces:
Serializable
public class StdSubtypeResolver extends SubtypeResolver implements Serializable
StandardSubtypeResolver
implementation.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected LinkedHashSet<NamedType>
_registeredSubtypes
-
Constructor Summary
Constructors Constructor Description StdSubtypeResolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
_collectAndResolve(AnnotatedClass annotatedType, NamedType namedType, MapperConfig<?> config, 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(AnnotatedClass annotatedType, NamedType namedType, MapperConfig<?> config, 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>
_combineNamedAndUnnamed(Class<?> rawBase, Set<Class<?>> typesHandled, Map<String,NamedType> byName)
Helper method used for merging explicitly named types and handled classes without explicit names.Collection<NamedType>
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).Collection<NamedType>
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).Collection<NamedType>
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).Collection<NamedType>
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).void
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).void
registerSubtypes(Class<?>... classes)
void
registerSubtypes(Collection<Class<?>> subtypes)
-
Methods inherited from class com.fasterxml.jackson.databind.jsontype.SubtypeResolver
collectAndResolveSubtypes, collectAndResolveSubtypes
-
-
-
-
Field Detail
-
_registeredSubtypes
protected LinkedHashSet<NamedType> _registeredSubtypes
-
-
Method Detail
-
registerSubtypes
public void registerSubtypes(NamedType... types)
Description copied from class:SubtypeResolver
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).- Specified by:
registerSubtypes
in classSubtypeResolver
-
registerSubtypes
public void registerSubtypes(Class<?>... classes)
- Specified by:
registerSubtypes
in classSubtypeResolver
-
registerSubtypes
public void registerSubtypes(Collection<Class<?>> subtypes)
- Specified by:
registerSubtypes
in classSubtypeResolver
-
collectAndResolveSubtypesByClass
public Collection<NamedType> collectAndResolveSubtypesByClass(MapperConfig<?> config, AnnotatedMember property, JavaType baseType)
Description copied from class:SubtypeResolver
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).- Overrides:
collectAndResolveSubtypesByClass
in classSubtypeResolver
baseType
- 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:SubtypeResolver
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).- Overrides:
collectAndResolveSubtypesByClass
in classSubtypeResolver
type
- 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:SubtypeResolver
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).- Overrides:
collectAndResolveSubtypesByTypeId
in classSubtypeResolver
baseType
- 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:SubtypeResolver
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).- Overrides:
collectAndResolveSubtypesByTypeId
in classSubtypeResolver
baseType
- 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(AnnotatedClass annotatedType, NamedType namedType, MapperConfig<?> config, 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(AnnotatedClass annotatedType, NamedType namedType, MapperConfig<?> config, 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).
-
-