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, toStringdeserializeIfNatural, deserializeIfNaturalpublic AsDeductionTypeDeserializer(JavaType bt, TypeIdResolver idRes, JavaType defaultImpl, DeserializationConfig config, Collection<NamedType> subtypes)
public AsDeductionTypeDeserializer(AsDeductionTypeDeserializer src, BeanProperty property)
public JsonTypeInfo.As getTypeInclusion()
TypeDeserializergetTypeInclusion in class AsPropertyTypeDeserializerpublic TypeDeserializer forProperty(BeanProperty prop)
TypeDeserializerCollection or Map
valued properties).forProperty in class AsPropertyTypeDeserializerprotected Map<BitSet,String> buildFingerprints(DeserializationConfig config, Collection<NamedType> subtypes)
public Object deserializeTypedFromObject(JsonParser p, DeserializationContext ctxt) throws IOException
AsPropertyTypeDeserializerdeserializeTypedFromObject in class AsPropertyTypeDeserializerIOExceptionCopyright © 2008–2020 FasterXML. All rights reserved.