Top Fields Constructors Methods
tools.jackson.dataformat.avro

public Class AvroTypeDeserializer

extends TypeDeserializerBase
Class Inheritance
Imports
com.fasterxml.jackson.annotation.JsonTypeInfo, tools.jackson.core.JacksonException, .JsonParser, tools.jackson.databind.*, tools.jackson.databind.jsontype.TypeDeserializer, .TypeIdResolver, tools.jackson.databind.jsontype.impl.TypeDeserializerBase, tools.jackson.dataformat.avro.schema.AvroSchemaHelper

Field Summary

Inherited from tools.jackson.databind.jsontype.impl.TypeDeserializerBase:
_baseType_defaultImpl_defaultImplDeserializer_deserializers_idResolver_property_typeIdVisible_typePropertyName

Constructor Summary

AccessConstructor and Description
protected
AvroTypeDeserializer(JavaType baseType, TypeIdResolver idRes, String typePropertyName, boolean typeIdVisible, JavaType defaultImpl)

protected

Method Summary

Modifier and TypeMethod and Description
protected JavaType
_handleUnknownTypeId(DeserializationContext ctxt, String typeId)

Overrides tools.jackson.databind.jsontype.impl.TypeDeserializerBase._handleUnknownTypeId.

Helper method called when given type id cannot be resolved into concrete deserializer either directly (using given TypeIdResolver), or using default type.

public Object
deserializeTypedFromAny(JsonParser p, DeserializationContext ctxt)

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromAny.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself may have been serialized using any kind of JSON value (Array, Object, scalar).

public Object
deserializeTypedFromArray(JsonParser p, DeserializationContext ctxt)

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromArray.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as JSON Array (regardless of Java type).

public Object
deserializeTypedFromObject(JsonParser p, DeserializationContext ctxt)

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromObject.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as JSON Object (regardless of Java type).

public Object
deserializeTypedFromScalar(JsonParser p, DeserializationContext ctxt)

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromScalar.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as a scalar JSON value (something other than Array or Object), regardless of Java type.

public TypeDeserializer
forProperty(BeanProperty prop)

Implements abstract tools.jackson.databind.jsontype.impl.TypeDeserializerBase.forProperty.

Method called to create contextual version, to be used for values of given property.

public JsonTypeInfo.As
getTypeInclusion()

Implements abstract tools.jackson.databind.jsontype.impl.TypeDeserializerBase.getTypeInclusion.

Accessor for type information inclusion method that deserializer uses; indicates how type information is (expected to be) embedded in JSON input.

Inherited from tools.jackson.databind.jsontype.impl.TypeDeserializerBase:
_deserializeWithNativeTypeId_findDefaultImplDeserializer_findDeserializer_handleMissingTypeIdbaseTypebaseTypeNamegetDefaultImplgetPropertyNamegetTypeIdResolverhasDefaultImpltoString

Constructor Detail

AvroTypeDeserializerback to summary
protected AvroTypeDeserializer(JavaType baseType, TypeIdResolver idRes, String typePropertyName, boolean typeIdVisible, JavaType defaultImpl)
AvroTypeDeserializerback to summary
protected AvroTypeDeserializer(TypeDeserializerBase src, BeanProperty property)

Method Detail

_handleUnknownTypeIdback to summary
protected JavaType _handleUnknownTypeId(DeserializationContext ctxt, String typeId) throws JacksonException

Overrides tools.jackson.databind.jsontype.impl.TypeDeserializerBase._handleUnknownTypeId.

Doc from tools.jackson.databind.jsontype.impl.TypeDeserializerBase._handleUnknownTypeId.

Helper method called when given type id cannot be resolved into concrete deserializer either directly (using given TypeIdResolver), or using default type. Default implementation simply throws a tools.jackson.databind.DatabindException to indicate the problem; sub-classes may choose

Annotations
@Override
deserializeTypedFromAnyback to summary
public Object deserializeTypedFromAny(JsonParser p, DeserializationContext ctxt) throws JacksonException

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromAny.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromAny.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself may have been serialized using any kind of JSON value (Array, Object, scalar). Should only be called if JSON serialization is polymorphic (not Java type); for example when using JSON node representation, or "untyped" Java object (which may be Map, Collection, wrapper/primitive etc).

Annotations
@Override
deserializeTypedFromArrayback to summary
public Object deserializeTypedFromArray(JsonParser p, DeserializationContext ctxt) throws JacksonException

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromArray.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromArray.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as JSON Array (regardless of Java type). Method needs to figure out intended polymorphic type, locate ValueDeserializer to use, and call it with JSON data to deserializer (which does not contain type information).

Annotations
@Override
deserializeTypedFromObjectback to summary
public Object deserializeTypedFromObject(JsonParser p, DeserializationContext ctxt) throws JacksonException

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromObject.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromObject.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as JSON Object (regardless of Java type). Method needs to figure out intended polymorphic type, locate ValueDeserializer to use, and call it with JSON data to deserializer (which does not contain type information).

Annotations
@Override
deserializeTypedFromScalarback to summary
public Object deserializeTypedFromScalar(JsonParser p, DeserializationContext ctxt) throws JacksonException

Implements abstract tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromScalar.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.deserializeTypedFromScalar.

Method called to let this type deserializer handle deserialization of "typed" object, when value itself is serialized as a scalar JSON value (something other than Array or Object), regardless of Java type. Method needs to figure out intended polymorphic type, locate ValueDeserializer to use, and call it with JSON data to deserializer (which does not contain type information).

Annotations
@Override
forPropertyback to summary
public TypeDeserializer forProperty(BeanProperty prop)

Implements abstract tools.jackson.databind.jsontype.impl.TypeDeserializerBase.forProperty.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.forProperty.

Method called to create contextual version, to be used for values of given property. This may be the type itself (as is the case for bean properties), or values contained (for java.util.Collection or java.util.Map valued properties).

Annotations
@Override
getTypeInclusionback to summary
public JsonTypeInfo.As getTypeInclusion()

Implements abstract tools.jackson.databind.jsontype.impl.TypeDeserializerBase.getTypeInclusion.

Doc from tools.jackson.databind.jsontype.TypeDeserializer.getTypeInclusion.

Accessor for type information inclusion method that deserializer uses; indicates how type information is (expected to be) embedded in JSON input.

Annotations
@Override