public class AsDeductionTypeDeserializer extends AsPropertyTypeDeserializer
TypeDeserializer
capable of deducing polymorphic types based on the fields available. Deduction
is limited to the names of child fields (not their values or, consequently, any nested descendants).
Exceptions will be thrown if not enough unique information is present to select a single subtype._inclusion
_baseType, _defaultImpl, _defaultImplDeserializer, _deserializers, _idResolver, _property, _typeIdVisible, _typePropertyName
Constructor and Description |
---|
AsDeductionTypeDeserializer(AsDeductionTypeDeserializer src,
BeanProperty property) |
AsDeductionTypeDeserializer(JavaType bt,
TypeIdResolver idRes,
JavaType defaultImpl,
DeserializationConfig config,
Collection<NamedType> subtypes) |
Modifier and Type | Method and Description |
---|---|
protected Map<BitSet,String> |
buildFingerprints(DeserializationConfig config,
Collection<NamedType> subtypes) |
Object |
deserializeTypedFromObject(JsonParser p,
DeserializationContext ctxt)
This is the trickiest thing to handle, since property we are looking
for may be anywhere...
|
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.
|
_deserializeTypedForId, _deserializeTypedUsingDefaultImpl, deserializeTypedFromAny
_deserialize, _locateTypeId, _usesExternalId, deserializeTypedFromArray, deserializeTypedFromScalar
_deserializeWithNativeTypeId, _deserializeWithNativeTypeId, _findDefaultImplDeserializer, _findDeserializer, _handleMissingTypeId, _handleUnknownTypeId, baseType, baseTypeName, getDefaultImpl, getPropertyName, getTypeIdResolver, hasDefaultImpl, toString
deserializeIfNatural, deserializeIfNatural
public AsDeductionTypeDeserializer(JavaType bt, TypeIdResolver idRes, JavaType defaultImpl, DeserializationConfig config, Collection<NamedType> subtypes)
public AsDeductionTypeDeserializer(AsDeductionTypeDeserializer src, BeanProperty property)
public JsonTypeInfo.As getTypeInclusion()
TypeDeserializer
getTypeInclusion
in class AsPropertyTypeDeserializer
public TypeDeserializer forProperty(BeanProperty prop)
TypeDeserializer
Collection
or Map
valued properties).forProperty
in class AsPropertyTypeDeserializer
protected Map<BitSet,String> buildFingerprints(DeserializationConfig config, Collection<NamedType> subtypes)
public Object deserializeTypedFromObject(JsonParser p, DeserializationContext ctxt) throws IOException
AsPropertyTypeDeserializer
deserializeTypedFromObject
in class AsPropertyTypeDeserializer
IOException
Copyright © 2008–2020 FasterXML. All rights reserved.