Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.fasterxml.jackson.databind.jsontype.impl
Class TypeDeserializerBase

    java.lang.Object
      com.fasterxml.jackson.databind.jsontype.TypeDeserializer
          com.fasterxml.jackson.databind.jsontype.impl.TypeDeserializerBase

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  AsArrayTypeDeserializer, AsWrapperTypeDeserializer

    public abstract class TypeDeserializerBase

extends TypeDeserializer
implements Serializable

Base class for all standard Jackson `TypeDeserializer`s.

See Also:
  Serialized Form

Field Summary
`protected JavaType` | `_baseType`
`protected JavaType` | `_defaultImpl` Type to use as the default implementation, if type id is missing or can not be resolved.
`protected JsonDeserializer<Object>` | `_defaultImplDeserializer`
`protected HashMap<String,JsonDeserializer<Object>>` | `_deserializers` For efficient operation we will lazily build mappings from type ids to actual deserializers, once needed.
`protected TypeIdResolver` | `_idResolver`
`protected BeanProperty` | `_property` Property that contains value for which type information is included; null if value is a root value.
`protected boolean` | `_typeIdVisible`
`protected String` | `_typePropertyName` Name of type property used; needed for non-property versions too, in cases where type id is to be exposed as part of JSON.

Constructor Summary
`protected` | `TypeDeserializerBase(JavaType baseType, TypeIdResolver idRes, String typePropertyName, boolean typeIdVisible, Class<?> defaultImpl)`
`protected` | `TypeDeserializerBase(TypeDeserializerBase src, BeanProperty property)`

Method Summary
`protected JsonDeserializer<Object>` | `_findDefaultImplDeserializer(DeserializationContext ctxt)`
`protected JsonDeserializer<Object>` | `_findDeserializer(DeserializationContext ctxt, String typeId)`
`String` | `baseTypeName()`
`abstract TypeDeserializer` | `forProperty(BeanProperty prop)` Method called to create contextual version, to be used for values of given property.
`Class<?>` | `getDefaultImpl()` Accessor for "default implementation" type; optionally defined class to use in cases where type id is not accessible for some reason (either missing, or can not be resolved)
`String` | `getPropertyName()` Name of property that contains type information, if property-based inclusion is used.
`TypeIdResolver` | `getTypeIdResolver()` Accessor for object that handles conversions between types and matching type ids.
`abstract JsonTypeInfo.As` | `getTypeInclusion()` Accessor for type information inclusion method that deserializer uses; indicates how type information is (expected to be) embedded in JSON input.
`String` | `toString()`

Methods inherited from class com.fasterxml.jackson.databind.jsontype.TypeDeserializer
`deserializeTypedFromAny, deserializeTypedFromArray, deserializeTypedFromObject, deserializeTypedFromScalar`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### _idResolver

    protected final TypeIdResolver _idResolver

### _baseType

    protected final JavaType _baseType

### _property

    protected final BeanProperty _property

  Property that contains value for which type information is included; null if value is a root value. Note that this value is not assigned during construction but only when `forProperty(com.fasterxml.jackson.databind.BeanProperty)` is called to create a copy.

### _defaultImpl

    protected final JavaType _defaultImpl

  Type to use as the default implementation, if type id is missing or can not be resolved.

### _typePropertyName

    protected final String _typePropertyName

  Name of type property used; needed for non-property versions too, in cases where type id is to be exposed as part of JSON.

### _typeIdVisible

    protected final boolean _typeIdVisible

### _deserializers

    protected final HashMap<String,JsonDeserializer<Object>> _deserializers

  For efficient operation we will lazily build mappings from type ids to actual deserializers, once needed.

### _defaultImplDeserializer

    protected JsonDeserializer<Object> _defaultImplDeserializer

Constructor Detail

### TypeDeserializerBase

    protected TypeDeserializerBase(JavaType baseType,
                                   TypeIdResolver idRes,
                                   String typePropertyName,
                                   boolean typeIdVisible,
                                   Class<?> defaultImpl)

### TypeDeserializerBase

    protected TypeDeserializerBase(TypeDeserializerBase src,
                                   BeanProperty property)

Method Detail

### forProperty

    public abstract 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).

  Specified by:
    `forProperty` in class `TypeDeserializer`

### getTypeInclusion

    public abstract 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.

  Specified by:
    `getTypeInclusion` in class `TypeDeserializer`

### baseTypeName

    public String baseTypeName()

### getPropertyName

    public final String getPropertyName()

  Description copied from class: `TypeDeserializer`
  Name of property that contains type information, if property-based inclusion is used.

  Specified by:
    `getPropertyName` in class `TypeDeserializer`

### getTypeIdResolver

    public TypeIdResolver getTypeIdResolver()

  Description copied from class: `TypeDeserializer`
  Accessor for object that handles conversions between types and matching type ids.

  Specified by:
    `getTypeIdResolver` in class `TypeDeserializer`

### getDefaultImpl

    public Class<?> getDefaultImpl()

  Description copied from class: `TypeDeserializer`
  Accessor for "default implementation" type; optionally defined class to use in cases where type id is not accessible for some reason (either missing, or can not be resolved)

  Specified by:
    `getDefaultImpl` in class `TypeDeserializer`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### _findDeserializer

    protected final JsonDeserializer<Object> _findDeserializer(DeserializationContext ctxt,
                                                               String typeId)
                                                        throws IOException,
                                                               JsonProcessingException

  Throws:
    `IOException`
    `JsonProcessingException`

### _findDefaultImplDeserializer

    protected final JsonDeserializer<Object> _findDefaultImplDeserializer(DeserializationContext ctxt)
                                                                   throws IOException,
                                                                          JsonProcessingException

  Throws:
    `IOException`
    `JsonProcessingException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2012 FasterXML. All Rights Reserved.