Class ObjectMapper.DefaultTypeResolverBuilder
java.lang.Object
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.jsontype.impl.StdTypeResolverBuilder
edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.ObjectMapper.DefaultTypeResolverBuilder
- All Implemented Interfaces:
TypeResolverBuilder<StdTypeResolverBuilder>
,Serializable
- Enclosing class:
- ObjectMapper
public static class ObjectMapper.DefaultTypeResolverBuilder
extends StdTypeResolverBuilder
implements Serializable
Customized
TypeResolverBuilder
that provides type resolver builders
used with so-called "default typing"
(see ObjectMapper.activateDefaultTyping(PolymorphicTypeValidator)
for details).
Type resolver construction is based on configuration: implementation takes care of only providing builders in cases where type information should be applied. This is important since build calls may be sent for any and all types, and type information should NOT be applied to all of them.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected final ObjectMapper.DefaultTyping
Definition of what types is this default typer valid for.protected final PolymorphicTypeValidator
PolymorphicTypeValidator
top use for validating that the subtypes resolved are valid for use (usually to protect against possible security issues)Fields inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.jsontype.impl.StdTypeResolverBuilder
_customIdResolver, _defaultImpl, _idType, _includeAs, _typeIdVisible, _typeProperty
-
Constructor Summary
ModifierConstructorDescriptionprotected
DefaultTypeResolverBuilder
(ObjectMapper.DefaultTypeResolverBuilder base, Class<?> defaultImpl) Deprecated.Since 2.10 -
Method Summary
Modifier and TypeMethodDescriptionbuildTypeDeserializer
(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes) Method for building type deserializer based on current configuration of this builder.buildTypeSerializer
(SerializationConfig config, JavaType baseType, Collection<NamedType> subtypes) Method for building type serializer based on current configuration of this builder.subTypeValidator
(MapperConfig<?> config) Overridable helper method for determining actual validator to use when constructing type serializers and type deserializers.boolean
Method called to check if the default type handler should be used for given type.withDefaultImpl
(Class<?> defaultImpl) "Mutant factory" method for creating a new instance with different default implementation.Methods inherited from class edu.internet2.middleware.grouperClientExt.com.fasterxml.jackson.databind.jsontype.impl.StdTypeResolverBuilder
allowPrimitiveTypes, defaultImpl, defineDefaultImpl, getDefaultImpl, getTypeProperty, idResolver, inclusion, init, isTypeIdVisible, noTypeInfoBuilder, reportInvalidBaseType, typeIdVisibility, typeProperty, verifyBaseTypeValidity
-
Field Details
-
_appliesFor
Definition of what types is this default typer valid for. -
_subtypeValidator
PolymorphicTypeValidator
top use for validating that the subtypes resolved are valid for use (usually to protect against possible security issues)- Since:
- 2.10
-
-
Constructor Details
-
DefaultTypeResolverBuilder
Deprecated.Since 2.10 -
DefaultTypeResolverBuilder
- Since:
- 2.10
-
DefaultTypeResolverBuilder
protected DefaultTypeResolverBuilder(ObjectMapper.DefaultTypeResolverBuilder base, Class<?> defaultImpl)
-
-
Method Details
-
construct
public static ObjectMapper.DefaultTypeResolverBuilder construct(ObjectMapper.DefaultTyping t, PolymorphicTypeValidator ptv) - Since:
- 2.10
-
withDefaultImpl
Description copied from interface:TypeResolverBuilder
"Mutant factory" method for creating a new instance with different default implementation.- Specified by:
withDefaultImpl
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Overrides:
withDefaultImpl
in classStdTypeResolverBuilder
- Returns:
- Either this instance (if nothing changed) or a new instance with different default implementation
-
subTypeValidator
Description copied from class:StdTypeResolverBuilder
Overridable helper method for determining actual validator to use when constructing type serializers and type deserializers.Default implementation simply uses one configured and accessible using
MapperConfig.getPolymorphicTypeValidator()
.- Overrides:
subTypeValidator
in classStdTypeResolverBuilder
-
buildTypeDeserializer
public TypeDeserializer buildTypeDeserializer(DeserializationConfig config, JavaType baseType, Collection<NamedType> subtypes) Description copied from interface:TypeResolverBuilder
Method for building type deserializer based on current configuration of this builder.- Specified by:
buildTypeDeserializer
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Overrides:
buildTypeDeserializer
in classStdTypeResolverBuilder
baseType
- Base type that constructed resolver will handle; super type of all types it will be used for.subtypes
- Known subtypes of the base type.
-
buildTypeSerializer
public TypeSerializer buildTypeSerializer(SerializationConfig config, JavaType baseType, Collection<NamedType> subtypes) Description copied from interface:TypeResolverBuilder
Method for building type serializer based on current configuration of this builder.- Specified by:
buildTypeSerializer
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Overrides:
buildTypeSerializer
in classStdTypeResolverBuilder
baseType
- Base type that constructed resolver will handle; super type of all types it will be used for.
-
useForType
Method called to check if the default type handler should be used for given type. Note: "natural types" (String, Boolean, Integer, Double) will never use typing; that is both due to them being concrete and final, and since actual serializers and deserializers will also ignore any attempts to enforce typing.
-