Class StdTypeResolverBuilder
- java.lang.Object
-
- com.fasterxml.jackson.databind.jsontype.impl.StdTypeResolverBuilder
-
- All Implemented Interfaces:
TypeResolverBuilder<StdTypeResolverBuilder>
- Direct Known Subclasses:
ObjectMapper.DefaultTypeResolverBuilder
,XmlTypeResolverBuilder
public class StdTypeResolverBuilder extends java.lang.Object implements TypeResolverBuilder<StdTypeResolverBuilder>
DefaultTypeResolverBuilder
implementation.
-
-
Constructor Summary
Constructors Constructor Description StdTypeResolverBuilder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TypeDeserializer
buildTypeDeserializer(DeserializationConfig config, JavaType baseType, java.util.Collection<NamedType> subtypes)
Method for building type deserializer based on current configuration of this builder.TypeSerializer
buildTypeSerializer(SerializationConfig config, JavaType baseType, java.util.Collection<NamedType> subtypes)
Method for building type serializer based on current configuration of this builder.StdTypeResolverBuilder
defaultImpl(java.lang.Class<?> defaultImpl)
Method for specifying default implementation to use if type id is either not available, or cannot be resolved.java.lang.Class<?>
getDefaultImpl()
Accessor for currently configured default type; implementation class that may be used in case no valid type information is available during type resolutionjava.lang.String
getTypeProperty()
StdTypeResolverBuilder
inclusion(JsonTypeInfo.As includeAs)
Method for specifying mechanism to use for including type metadata in JSON.StdTypeResolverBuilder
init(JsonTypeInfo.Id idType, TypeIdResolver idRes)
Initialization method that is called right after constructing the builder instance.boolean
isTypeIdVisible()
static StdTypeResolverBuilder
noTypeInfoBuilder()
PolymorphicTypeValidator
subTypeValidator(MapperConfig<?> config)
Overridable helper method for determining actual validator to use when constructing type serializers and type deserializers.StdTypeResolverBuilder
typeIdVisibility(boolean isVisible)
Method for specifying whether type id should be visible toJsonDeserializer
s or not.StdTypeResolverBuilder
typeProperty(java.lang.String typeIdPropName)
Method for constructing an instance with specified type property name (property name to use for type id when using "as-property" inclusion).StdTypeResolverBuilder
withDefaultImpl(java.lang.Class<?> defaultImpl)
"Mutant factory" method for creating a new instance with different default implementation.
-
-
-
Method Detail
-
noTypeInfoBuilder
public static StdTypeResolverBuilder noTypeInfoBuilder()
-
init
public StdTypeResolverBuilder init(JsonTypeInfo.Id idType, TypeIdResolver idRes)
Description copied from interface:TypeResolverBuilder
Initialization method that is called right after constructing the builder instance.- Specified by:
init
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Parameters:
idType
- Which type metadata is usedidRes
- (optional) Custom type id resolver used, if any- Returns:
- Resulting builder instance (usually this builder, but not necessarily)
-
buildTypeSerializer
public TypeSerializer buildTypeSerializer(SerializationConfig config, JavaType baseType, java.util.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>
baseType
- Base type that constructed resolver will handle; super type of all types it will be used for.
-
buildTypeDeserializer
public TypeDeserializer buildTypeDeserializer(DeserializationConfig config, JavaType baseType, java.util.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>
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.
-
inclusion
public StdTypeResolverBuilder inclusion(JsonTypeInfo.As includeAs)
Description copied from interface:TypeResolverBuilder
Method for specifying mechanism to use for including type metadata in JSON. If not explicitly called, setting defaults toJsonTypeInfo.As.PROPERTY
.- Specified by:
inclusion
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Parameters:
includeAs
- Mechanism used for including type metadata in JSON- Returns:
- Resulting builder instance (usually this builder, but may be a newly constructed instance for immutable builders}
-
typeProperty
public StdTypeResolverBuilder typeProperty(java.lang.String typeIdPropName)
Method for constructing an instance with specified type property name (property name to use for type id when using "as-property" inclusion).- Specified by:
typeProperty
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Parameters:
typeIdPropName
- Name of JSON property to use for including type information- Returns:
- Resulting builder instance (usually this builder, but may be a newly constructed instance for immutable builders}
-
defaultImpl
public StdTypeResolverBuilder defaultImpl(java.lang.Class<?> defaultImpl)
Description copied from interface:TypeResolverBuilder
Method for specifying default implementation to use if type id is either not available, or cannot be resolved.- Specified by:
defaultImpl
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Returns:
- Resulting builder instance (usually this builder, but may be a newly constructed instance for immutable builders}
-
typeIdVisibility
public StdTypeResolverBuilder typeIdVisibility(boolean isVisible)
Description copied from interface:TypeResolverBuilder
Method for specifying whether type id should be visible toJsonDeserializer
s or not.- Specified by:
typeIdVisibility
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Returns:
- Resulting builder instance (usually this builder, but may be a newly constructed instance for immutable builders}
-
withDefaultImpl
public StdTypeResolverBuilder withDefaultImpl(java.lang.Class<?> defaultImpl)
Description copied from interface:TypeResolverBuilder
"Mutant factory" method for creating a new instance with different default implementation.- Specified by:
withDefaultImpl
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
- Returns:
- Either this instance (if nothing changed) or a new instance with different default implementation
-
getDefaultImpl
public java.lang.Class<?> getDefaultImpl()
Description copied from interface:TypeResolverBuilder
Accessor for currently configured default type; implementation class that may be used in case no valid type information is available during type resolution- Specified by:
getDefaultImpl
in interfaceTypeResolverBuilder<StdTypeResolverBuilder>
-
getTypeProperty
public java.lang.String getTypeProperty()
-
isTypeIdVisible
public boolean isTypeIdVisible()
-
subTypeValidator
public PolymorphicTypeValidator subTypeValidator(MapperConfig<?> config)
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()
.- Since:
- 2.10
-
-