com.fasterxml.jackson.module.afterburner.deser

## Class OptimizedValueInstantiator

- java.lang.Object
- - com.fasterxml.jackson.databind.deser.ValueInstantiator
  - - com.fasterxml.jackson.databind.deser.std.StdValueInstantiator
    - - com.fasterxml.jackson.module.afterburner.deser.OptimizedValueInstantiator

- All Implemented Interfaces:
    Serializable

      public abstract class OptimizedValueInstantiator
      extends com.fasterxml.jackson.databind.deser.std.StdValueInstantiator

  Base class for concrete bytecode-generated value instantiators.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.deser.ValueInstantiator

      `com.fasterxml.jackson.databind.deser.ValueInstantiator.Base, com.fasterxml.jackson.databind.deser.ValueInstantiator.Gettable`

  - ### Field Summary

    - ### Fields inherited from class com.fasterxml.jackson.databind.deser.std.StdValueInstantiator

      `_arrayDelegateArguments, _arrayDelegateCreator, _arrayDelegateType, _constructorArguments, _defaultCreator, _delegateArguments, _delegateCreator, _delegateType, _fromBooleanCreator, _fromDoubleCreator, _fromIntCreator, _fromLongCreator, _fromStringCreator, _incompleteParameter, _valueClass, _valueTypeDesc, _withArgsCreator`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `OptimizedValueInstantiator()` Default constructor which is only used when creating dummy instance to call factory method.
    `protected` | `OptimizedValueInstantiator(com.fasterxml.jackson.databind.deser.std.StdValueInstantiator src)` Copy-constructor to use for creating actual optimized instances.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Object` | `_handleInstantiationProblem(com.fasterxml.jackson.databind.DeserializationContext ctxt, Exception e)` Helper method needed to allow handling of instantiation exception in case of optimized no-args creator.
    `boolean` | `canCreateUsingDefault()` Need to override this, now that we have installed default creator.
    `abstract Object` | `createUsingDefault(com.fasterxml.jackson.databind.DeserializationContext ctxt)`
    `protected abstract OptimizedValueInstantiator` | `with(com.fasterxml.jackson.databind.deser.std.StdValueInstantiator src)`

    - ### Methods inherited from class com.fasterxml.jackson.databind.deser.std.StdValueInstantiator

      `canCreateFromBoolean, canCreateFromDouble, canCreateFromInt, canCreateFromLong, canCreateFromObjectWith, canCreateFromString, canCreateUsingArrayDelegate, canCreateUsingDelegate, configureFromArraySettings, configureFromBooleanCreator, configureFromDoubleCreator, configureFromIntCreator, configureFromLongCreator, configureFromObjectSettings, configureFromStringCreator, configureIncompleteParameter, createFromBoolean, createFromDouble, createFromInt, createFromLong, createFromObjectWith, createFromString, createUsingArrayDelegate, createUsingDelegate, getArrayDelegateCreator, getArrayDelegateType, getDefaultCreator, getDelegateCreator, getDelegateType, getFromObjectArguments, getIncompleteParameter, getValueClass, getValueTypeDesc, getWithArgsCreator, rewrapCtorProblem, unwrapAndWrapException, wrapAsJsonMappingException, wrapException`

    - ### Methods inherited from class com.fasterxml.jackson.databind.deser.ValueInstantiator

      `_createFromStringFallbacks, canInstantiate, createFromObjectWith`

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

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

- - ### Constructor Detail

    - #### OptimizedValueInstantiator

          protected OptimizedValueInstantiator()

      Default constructor which is only used when creating dummy instance to call factory method.

    - #### OptimizedValueInstantiator

          protected OptimizedValueInstantiator(com.fasterxml.jackson.databind.deser.std.StdValueInstantiator src)

      Copy-constructor to use for creating actual optimized instances.

  - ### Method Detail

    - #### canCreateUsingDefault

          public boolean canCreateUsingDefault()

      Need to override this, now that we have installed default creator.
      Overrides:
        `canCreateUsingDefault` in class `com.fasterxml.jackson.databind.deser.std.StdValueInstantiator`

    - #### with

          protected abstract OptimizedValueInstantiator with(com.fasterxml.jackson.databind.deser.std.StdValueInstantiator src)

    - #### createUsingDefault

          public abstract Object createUsingDefault(com.fasterxml.jackson.databind.DeserializationContext ctxt)
                                             throws IOException

      Overrides:
        `createUsingDefault` in class `com.fasterxml.jackson.databind.deser.std.StdValueInstantiator`
      Throws:
        `IOException`

    - #### _handleInstantiationProblem

          protected Object _handleInstantiationProblem(com.fasterxml.jackson.databind.DeserializationContext ctxt,
                                           Exception e)
                                                throws IOException

      Helper method needed to allow handling of instantiation exception in case of optimized no-args creator.
      Throws:
        `IOException`
      Since:
        2.9

Copyright © 2017 FasterXML. All rights reserved.