SimpleValueInstantiators
Date: 2016-12-04

com.fasterxml.jackson.databind.module

## Class SimpleValueInstantiators

- java.lang.Object
- - com.fasterxml.jackson.databind.deser.ValueInstantiators.Base
  - - com.fasterxml.jackson.databind.module.SimpleValueInstantiators

- All Implemented Interfaces:
    ValueInstantiators, java.io.Serializable

      public class SimpleValueInstantiators
      extends ValueInstantiators.Base
      implements java.io.Serializable

  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.fasterxml.jackson.databind.deser.ValueInstantiators

      `ValueInstantiators.Base`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected java.util.HashMap<ClassKey,ValueInstantiator>` | `_classMappings` Mappings from raw (type-erased, i.e.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleValueInstantiators()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `SimpleValueInstantiators` | `addValueInstantiator(java.lang.Class<?> forType, ValueInstantiator inst)`
    `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`

- - ### Field Detail

    - #### _classMappings

          protected java.util.HashMap<ClassKey,ValueInstantiator> _classMappings

      Mappings from raw (type-erased, i.e. non-generic) types to matching `ValueInstantiator` instances.

  - ### Constructor Detail

    - #### SimpleValueInstantiators

          public SimpleValueInstantiators()

  - ### Method Detail

    - #### addValueInstantiator

          public SimpleValueInstantiators addValueInstantiator(java.lang.Class<?> forType,
                                                      ValueInstantiator inst)

    - #### 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`
      Overrides:
        `findValueInstantiator` in class `ValueInstantiators.Base`
      Parameters:
        `config` - Deserialization configuration in use
        `beanDesc` - Additional information about POJO type to be instantiated
        `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.