com.fasterxml.jackson.databind.jsontype.impl
Class AsExternalTypeDeserializer

java.lang.Object
  extended by com.fasterxml.jackson.databind.jsontype.TypeDeserializer
      extended by com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase
          extended by com.fasterxml.jackson.databind.jsontype.impl.AsArrayTypeDeserializer
              extended by com.fasterxml.jackson.databind.jsontype.impl.AsExternalTypeDeserializer

public class AsExternalTypeDeserializer
extends AsArrayTypeDeserializer

Type deserializer used with JsonTypeInfo.As.EXTERNAL_PROPERTY inclusion mechanism. Actual implementation may look bit strange since it depends on comprehensive pre-processing done by BeanDeserializer to basically transform external type id into structure that looks more like "wrapper-array" style inclusion. This intermediate form is chosen to allow supporting all possible JSON structures.


Field Summary
 
Fields inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase
_baseType, _defaultImpl, _defaultImplDeserializer, _deserializers, _idResolver, _property, _typeIdVisible, _typePropertyName
 
Constructor Summary
AsExternalTypeDeserializer(AsExternalTypeDeserializer src, BeanProperty property)
           
AsExternalTypeDeserializer(JavaType bt, TypeIdResolver idRes, String typePropertyName, boolean typeIdVisible, Class<?> defaultImpl)
           
 
Method Summary
 TypeDeserializer forProperty(BeanProperty prop)
          Method called to create contextual version, to be used for values of given property.
 com.fasterxml.jackson.annotation.JsonTypeInfo.As getTypeInclusion()
          Accessor for type information inclusion method that deserializer uses; indicates how type information is (expected to be) embedded in JSON input.
 
Methods inherited from class com.fasterxml.jackson.databind.jsontype.impl.AsArrayTypeDeserializer
_locateTypeId, deserializeTypedFromAny, deserializeTypedFromArray, deserializeTypedFromObject, deserializeTypedFromScalar
 
Methods inherited from class com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase
_findDefaultImplDeserializer, _findDeserializer, baseTypeName, getDefaultImpl, getPropertyName, getTypeIdResolver, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AsExternalTypeDeserializer

public AsExternalTypeDeserializer(JavaType bt,
                                  TypeIdResolver idRes,
                                  String typePropertyName,
                                  boolean typeIdVisible,
                                  Class<?> defaultImpl)

AsExternalTypeDeserializer

public AsExternalTypeDeserializer(AsExternalTypeDeserializer src,
                                  BeanProperty property)
Method Detail

forProperty

public TypeDeserializer forProperty(BeanProperty prop)
Description copied from class: TypeDeserializer
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 Collection or Map valued properties).

Overrides:
forProperty in class AsArrayTypeDeserializer

getTypeInclusion

public com.fasterxml.jackson.annotation.JsonTypeInfo.As getTypeInclusion()
Description copied from class: TypeDeserializer
Accessor for type information inclusion method that deserializer uses; indicates how type information is (expected to be) embedded in JSON input.

Overrides:
getTypeInclusion in class AsArrayTypeDeserializer


Copyright © 2012 fasterxml.com. All Rights Reserved.