public class AsWrapperTypeDeserializer extends TypeDeserializerBase implements Serializable
JsonTypeInfo.As.WRAPPER_OBJECT
inclusion mechanism. Simple since JSON structure used is always
the same, regardless of structure used for actual value: wrapping
is done using a single-element JSON Object where type id is the key,
and actual object data as the value._baseType, _defaultImpl, _defaultImplDeserializer, _deserializers, _idResolver, _property, _typeIdVisible, _typePropertyName
Modifier | Constructor and Description |
---|---|
protected |
AsWrapperTypeDeserializer(AsWrapperTypeDeserializer src,
BeanProperty property) |
|
AsWrapperTypeDeserializer(JavaType bt,
TypeIdResolver idRes,
String typePropertyName,
boolean typeIdVisible,
JavaType defaultImpl) |
Modifier and Type | Method and Description |
---|---|
protected Object |
_deserialize(JsonParser p,
DeserializationContext ctxt)
Method that handles type information wrapper, locates actual
subtype deserializer to use, and calls it to do actual
deserialization.
|
Object |
deserializeTypedFromAny(JsonParser jp,
DeserializationContext ctxt)
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).
|
Object |
deserializeTypedFromArray(JsonParser jp,
DeserializationContext ctxt)
Method called to let this type deserializer handle
deserialization of "typed" object, when value itself
is serialized as JSON Array (regardless of Java type).
|
Object |
deserializeTypedFromObject(JsonParser jp,
DeserializationContext ctxt)
Deserializing type id enclosed using WRAPPER_OBJECT style is straightforward
|
Object |
deserializeTypedFromScalar(JsonParser jp,
DeserializationContext ctxt)
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.
|
TypeDeserializer |
forProperty(BeanProperty prop)
Method called to create contextual version, to be used for
values of given property.
|
JsonTypeInfo.As |
getTypeInclusion()
Accessor for type information inclusion method
that deserializer uses; indicates how type information
is (expected to be) embedded in JSON input.
|
_deserializeWithNativeTypeId, _deserializeWithNativeTypeId, _findDefaultImplDeserializer, _findDeserializer, _handleMissingTypeId, _handleUnknownTypeId, baseType, baseTypeName, getDefaultImpl, getPropertyName, getTypeIdResolver, hasDefaultImpl, toString
deserializeIfNatural, deserializeIfNatural
public AsWrapperTypeDeserializer(JavaType bt, TypeIdResolver idRes, String typePropertyName, boolean typeIdVisible, JavaType defaultImpl)
protected AsWrapperTypeDeserializer(AsWrapperTypeDeserializer src, BeanProperty property)
public TypeDeserializer forProperty(BeanProperty prop)
TypeDeserializer
Collection
or Map
valued properties).forProperty
in class TypeDeserializerBase
public JsonTypeInfo.As getTypeInclusion()
TypeDeserializer
getTypeInclusion
in class TypeDeserializerBase
public Object deserializeTypedFromObject(JsonParser jp, DeserializationContext ctxt) throws IOException
deserializeTypedFromObject
in class TypeDeserializer
IOException
public Object deserializeTypedFromArray(JsonParser jp, DeserializationContext ctxt) throws IOException
TypeDeserializer
JsonDeserializer
to use, and
call it with JSON data to deserializer (which does not contain
type information).deserializeTypedFromArray
in class TypeDeserializer
IOException
public Object deserializeTypedFromScalar(JsonParser jp, DeserializationContext ctxt) throws IOException
TypeDeserializer
JsonDeserializer
to use, and
call it with JSON data to deserializer (which does not contain
type information).deserializeTypedFromScalar
in class TypeDeserializer
IOException
public Object deserializeTypedFromAny(JsonParser jp, DeserializationContext ctxt) throws IOException
TypeDeserializer
deserializeTypedFromAny
in class TypeDeserializer
IOException
protected Object _deserialize(JsonParser p, DeserializationContext ctxt) throws IOException
IOException
Copyright © 2021 JBoss by Red Hat. All rights reserved.