ValueInstantiators.Base (Jackson JSON Processor)
Date: 2013-07-14

org.codehaus.jackson.map.deser

## Class ValueInstantiators.Base

- java.lang.Object
- - org.codehaus.jackson.map.deser.ValueInstantiators.Base

- All Implemented Interfaces:
    ValueInstantiators
  Direct Known Subclasses:
    SimpleValueInstantiators
  Enclosing interface:
    ValueInstantiators

      public static class ValueInstantiators.Base
      extends Object
      implements ValueInstantiators

  Basic "NOP" implementation that can be used as the base class for custom implementations. Safer to extend (instead of implementing `ValueInstantiators`) in case later Jackson versions add new methods in base interface.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.codehaus.jackson.map.deser.ValueInstantiators

      `ValueInstantiators.Base`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ValueInstantiators.Base()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ValueInstantiator` | `findValueInstantiator(DeserializationConfig config, BeanDescription beanDesc, ValueInstantiator defaultInstantiator)` Method called to find the `ValueInstantiator` to use for creating instances of specified type during deserialization.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ValueInstantiators.Base

          public ValueInstantiators.Base()

  - ### Method Detail

    - #### findValueInstantiator

          public ValueInstantiator findValueInstantiator(DeserializationConfig config,
                                                BeanDescription beanDesc,
                                                ValueInstantiator defaultInstantiator)

      Description copied from interface: `ValueInstantiators`
      Method called to find the `ValueInstantiator` to use for creating instances of specified type during deserialization. Note that a default value instantiator is always created first and passed; if an implementation does not want to modify or replace it, it has to return passed instance as is (returning null is an error)
      Specified by:
        `findValueInstantiator` in interface `ValueInstantiators`
      Parameters:
        `config` - Deserialization configuration in use
        `beanDesc` - Additional information about POJO type to be instantiated: description will always be of type `BasicBeanDescription` (that is, safe to cast to this more specific type)
        `defaultInstantiator` - Instantiator that will be used if no changes are made; passed to allow custom instances to use annotation-provided information (note, however, that earlier `ValueInstantiators` may have changed it to a custom instantiator already)
      Returns:
        Instantiator to use; either `defaultInstantiator` that was passed, or a custom variant; can not be null.