Top Description Fields Constructors Methods
tools.jackson.databind.deser.std

public Class StdValueInstantiator

extends ValueInstantiator
Class Inheritance
Annotations
@JacksonStdImpl
Imports
java.lang.reflect.InvocationTargetException, java.math.BigDecimal, .BigInteger, tools.jackson.core.JacksonException, tools.jackson.databind.*, tools.jackson.databind.annotation.JacksonStdImpl, tools.jackson.databind.deser.*, tools.jackson.databind.introspect.AnnotatedWithParams

Default ValueInstantiator implementation, which supports Creator methods that can be indicated by standard Jackson annotations.

Field Summary

Modifier and TypeField and Description
protected SettableBeanProperty[]
protected AnnotatedWithParams
protected JavaType
protected SettableBeanProperty[]
protected AnnotatedWithParams
_defaultCreator

Default (no-argument) constructor to use for instantiation (with createUsingDefault)

protected SettableBeanProperty[]
protected AnnotatedWithParams
protected JavaType
protected AnnotatedWithParams
protected AnnotatedWithParams
protected AnnotatedWithParams
protected AnnotatedWithParams
protected AnnotatedWithParams
protected AnnotatedWithParams
protected AnnotatedWithParams
protected final Class<?>
protected final String
_valueTypeDesc

Type of values that are instantiated; used for error reporting purposes.

protected AnnotatedWithParams

Constructor Summary

AccessConstructor and Description
public
protected
StdValueInstantiator(StdValueInstantiator src)

Copy-constructor that sub-classes can use when creating new instances by fluent-style construction

Method Summary

Modifier and TypeMethod and Description
private Object
_createUsingDelegate(AnnotatedWithParams delegateCreator, SettableBeanProperty[] delegateArguments, DeserializationContext ctxt, Object delegate)

public boolean
canCreateFromBigDecimal()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigDecimal.

Method that can be called to check whether a BigDecimal based creator is available to use (to call createFromBigDecimal).

public boolean
canCreateFromBigInteger()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigInteger.

Method that can be called to check whether a BigInteger based creator is available to use (to call createFromBigInteger).

public boolean
canCreateFromBoolean()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBoolean.

Method that can be called to check whether a double (boolean / Boolean) based creator is available to use (to call createFromDouble).

public boolean
canCreateFromDouble()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromDouble.

Method that can be called to check whether a double (double / Double) based creator is available to use (to call createFromDouble).

public boolean
canCreateFromInt()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromInt.

Method that can be called to check whether an integer (int, Integer) based creator is available to use (to call createFromInt).

public boolean
canCreateFromLong()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromLong.

Method that can be called to check whether a long (long, Long) based creator is available to use (to call createFromLong).

public boolean
canCreateFromObjectWith()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromObjectWith.

Method that can be called to check whether a property-based creator (argument-taking constructor or factory method) is available to instantiate values from JSON Object

public boolean
canCreateFromString()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromString.

Method that can be called to check whether a String-based creator is available for this instantiator.

public boolean
canCreateUsingArrayDelegate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingArrayDelegate.

Method that can be called to check whether a array-delegate-based creator (single-arg constructor or factory method) is available for this instantiator

public boolean
canCreateUsingDefault()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDefault.

Method that can be called to check whether a default creator (constructor, or no-arg static factory method) is available for this instantiator

public boolean
canCreateUsingDelegate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDelegate.

Method that can be called to check whether a delegate-based creator (single-arg constructor or factory method) is available for this instantiator

public boolean
canInstantiate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canInstantiate.

Method that will return true if any of canCreateXxx method returns true: that is, if there is any way that an instance could be created.

public void
configureFromArraySettings(AnnotatedWithParams arrayDelegateCreator, JavaType arrayDelegateType, SettableBeanProperty[] arrayDelegateArgs)

public void
public void
public void
public void
public void
public void
public void
configureFromObjectSettings(AnnotatedWithParams defaultCreator, AnnotatedWithParams delegateCreator, JavaType delegateType, SettableBeanProperty[] delegateArgs, AnnotatedWithParams withArgsCreator, SettableBeanProperty[] constructorArgs)

Method for setting properties related to instantiating values from JSON Object.

public void
public ValueInstantiator
createContextual(DeserializationContext ctxt, BeanDescription.Supplier beanDescRef)

Implements abstract tools.jackson.databind.deser.ValueInstantiator.createContextual.

"Contextualization" method that is called after construction but before first use, to allow instantiator access to context needed to possible resolve its dependencies.

public Object
public Object
public Object
public Object
public Object
public Object
public Object
createFromObjectWith(DeserializationContext ctxt, Object[] args)

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromObjectWith.

Method called to create value instance from JSON Object when instantiation arguments are passed; this is done, for example when passing information specified with "Creator" annotations.

public Object
public Object
createUsingArrayDelegate(DeserializationContext ctxt, Object delegate)

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingArrayDelegate.

Method to called to create value instance from JSON Array using an intermediate "delegate" value to pass to createor method

public Object
createUsingDefault(DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDefault.

Method called to create value instance from a JSON value when no data needs to passed to creator (constructor, factory method); typically this will call the default constructor of the value object.

public Object
createUsingDefaultOrWithoutArguments(DeserializationContext ctxt)

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDefaultOrWithoutArguments.

Combination of createUsingDefault and createFromObjectWith(DeserializationContext, Object[]) which will call former first, if possible; or latter if possible (with null arguments); and if neither works throw an exception.

public Object
createUsingDelegate(DeserializationContext ctxt, Object delegate)

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDelegate.

Method to called to create value instance from JSON Object using an intermediate "delegate" value to pass to createor method

public AnnotatedWithParams
getArrayDelegateCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "array delegate creator".

public JavaType
getArrayDelegateType(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateType.

Method that can be used to determine what is the type of array delegate type to use, if any; if no delegates are used, will return null.

public AnnotatedWithParams
getDefaultCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getDefaultCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "default creator" (creator that is called without arguments; typically default [zero-argument] constructor of the type).

public AnnotatedWithParams
getDelegateCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getDelegateCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "delegate creator".

public JavaType
getDelegateType(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getDelegateType.

Method that can be used to determine what is the type of delegate type to use, if any; if no delegates are used, will return null.

public SettableBeanProperty[]
getFromObjectArguments(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getFromObjectArguments.

Method called to determine types of instantiation arguments to use when creating instances with creator arguments (when canCreateFromObjectWith() returns true).

public Class<?>
getValueClass()

Implements abstract tools.jackson.databind.deser.ValueInstantiator.getValueClass.

Accessor for raw (type-erased) type of instances to create.

public String
getValueTypeDesc()

Implements abstract tools.jackson.databind.deser.ValueInstantiator.getValueTypeDesc.

Method that returns description of the value type this instantiator handles.

public AnnotatedWithParams
getWithArgsCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getWithArgsCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "non-default creator" (constructor or factory method that takes one or more arguments).

protected DatabindException
rewrapCtorProblem(DeserializationContext ctxt, Throwable t)

Method that subclasses may call for standard handling of an exception thrown when calling constructor or factory method.

pack-priv static Double
protected DatabindException
wrapAsDatabindException(DeserializationContext ctxt, Throwable t)

Helper method that will return given Throwable case as a DatabindException (if it is of that type), or call DeserializationContext#instantiationException(Class, Throwable) to produce and return suitable DatabindException.

Inherited from tools.jackson.databind.deser.ValueInstantiator:
createFromObjectWith

Field Detail

_arrayDelegateArgumentsback to summary
protected SettableBeanProperty[] _arrayDelegateArguments
_arrayDelegateCreatorback to summary
protected AnnotatedWithParams _arrayDelegateCreator
_arrayDelegateTypeback to summary
protected JavaType _arrayDelegateType
_constructorArgumentsback to summary
protected SettableBeanProperty[] _constructorArguments
_defaultCreatorback to summary
protected AnnotatedWithParams _defaultCreator

Default (no-argument) constructor to use for instantiation (with createUsingDefault)

_delegateArgumentsback to summary
protected SettableBeanProperty[] _delegateArguments
_delegateCreatorback to summary
protected AnnotatedWithParams _delegateCreator
_delegateTypeback to summary
protected JavaType _delegateType
_fromBigDecimalCreatorback to summary
protected AnnotatedWithParams _fromBigDecimalCreator
_fromBigIntegerCreatorback to summary
protected AnnotatedWithParams _fromBigIntegerCreator
_fromBooleanCreatorback to summary
protected AnnotatedWithParams _fromBooleanCreator
_fromDoubleCreatorback to summary
protected AnnotatedWithParams _fromDoubleCreator
_fromIntCreatorback to summary
protected AnnotatedWithParams _fromIntCreator
_fromLongCreatorback to summary
protected AnnotatedWithParams _fromLongCreator
_fromStringCreatorback to summary
protected AnnotatedWithParams _fromStringCreator
_valueClassback to summary
protected final Class<?> _valueClass
_valueTypeDescback to summary
protected final String _valueTypeDesc

Type of values that are instantiated; used for error reporting purposes.

_withArgsCreatorback to summary
protected AnnotatedWithParams _withArgsCreator

Constructor Detail

StdValueInstantiatorback to summary
public StdValueInstantiator(DeserializationConfig config, JavaType valueType)
StdValueInstantiatorback to summary
protected StdValueInstantiator(StdValueInstantiator src)

Copy-constructor that sub-classes can use when creating new instances by fluent-style construction

Method Detail

_createUsingDelegateback to summary
private Object _createUsingDelegate(AnnotatedWithParams delegateCreator, SettableBeanProperty[] delegateArguments, DeserializationContext ctxt, Object delegate) throws JacksonException
canCreateFromBigDecimalback to summary
public boolean canCreateFromBigDecimal()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigDecimal.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigDecimal.

Method that can be called to check whether a BigDecimal based creator is available to use (to call createFromBigDecimal).

Annotations
@Override
canCreateFromBigIntegerback to summary
public boolean canCreateFromBigInteger()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigInteger.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromBigInteger.

Method that can be called to check whether a BigInteger based creator is available to use (to call createFromBigInteger). +

Annotations
@Override
canCreateFromBooleanback to summary
public boolean canCreateFromBoolean()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromBoolean.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromBoolean.

Method that can be called to check whether a double (boolean / Boolean) based creator is available to use (to call createFromDouble).

Annotations
@Override
canCreateFromDoubleback to summary
public boolean canCreateFromDouble()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromDouble.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromDouble.

Method that can be called to check whether a double (double / Double) based creator is available to use (to call createFromDouble).

Annotations
@Override
canCreateFromIntback to summary
public boolean canCreateFromInt()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromInt.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromInt.

Method that can be called to check whether an integer (int, Integer) based creator is available to use (to call createFromInt).

Annotations
@Override
canCreateFromLongback to summary
public boolean canCreateFromLong()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromLong.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromLong.

Method that can be called to check whether a long (long, Long) based creator is available to use (to call createFromLong).

Annotations
@Override
canCreateFromObjectWithback to summary
public boolean canCreateFromObjectWith()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromObjectWith.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromObjectWith.

Method that can be called to check whether a property-based creator (argument-taking constructor or factory method) is available to instantiate values from JSON Object

Annotations
@Override
canCreateFromStringback to summary
public boolean canCreateFromString()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateFromString.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateFromString.

Method that can be called to check whether a String-based creator is available for this instantiator.

Note

does NOT include possible case of fallbacks, or coercion; only considers explicit creator.

Annotations
@Override
canCreateUsingArrayDelegateback to summary
public boolean canCreateUsingArrayDelegate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingArrayDelegate.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateUsingArrayDelegate.

Method that can be called to check whether a array-delegate-based creator (single-arg constructor or factory method) is available for this instantiator

Annotations
@Override
canCreateUsingDefaultback to summary
public boolean canCreateUsingDefault()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDefault.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDefault.

Method that can be called to check whether a default creator (constructor, or no-arg static factory method) is available for this instantiator

Annotations
@Override
canCreateUsingDelegateback to summary
public boolean canCreateUsingDelegate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDelegate.

Doc from tools.jackson.databind.deser.ValueInstantiator.canCreateUsingDelegate.

Method that can be called to check whether a delegate-based creator (single-arg constructor or factory method) is available for this instantiator

Annotations
@Override
canInstantiateback to summary
public boolean canInstantiate()

Overrides tools.jackson.databind.deser.ValueInstantiator.canInstantiate.

Doc from tools.jackson.databind.deser.ValueInstantiator.canInstantiate.

Method that will return true if any of canCreateXxx method returns true: that is, if there is any way that an instance could be created.

Annotations
@Override
configureFromArraySettingsback to summary
public void configureFromArraySettings(AnnotatedWithParams arrayDelegateCreator, JavaType arrayDelegateType, SettableBeanProperty[] arrayDelegateArgs)
configureFromBigDecimalCreatorback to summary
public void configureFromBigDecimalCreator(AnnotatedWithParams creator)
configureFromBigIntegerCreatorback to summary
public void configureFromBigIntegerCreator(AnnotatedWithParams creator)
configureFromBooleanCreatorback to summary
public void configureFromBooleanCreator(AnnotatedWithParams creator)
configureFromDoubleCreatorback to summary
public void configureFromDoubleCreator(AnnotatedWithParams creator)
configureFromIntCreatorback to summary
public void configureFromIntCreator(AnnotatedWithParams creator)
configureFromLongCreatorback to summary
public void configureFromLongCreator(AnnotatedWithParams creator)
configureFromObjectSettingsback to summary
public void configureFromObjectSettings(AnnotatedWithParams defaultCreator, AnnotatedWithParams delegateCreator, JavaType delegateType, SettableBeanProperty[] delegateArgs, AnnotatedWithParams withArgsCreator, SettableBeanProperty[] constructorArgs)

Method for setting properties related to instantiating values from JSON Object. We will choose basically only one approach (out of possible three), and clear other properties

configureFromStringCreatorback to summary
public void configureFromStringCreator(AnnotatedWithParams creator)
createContextualback to summary
public ValueInstantiator createContextual(DeserializationContext ctxt, BeanDescription.Supplier beanDescRef)

Implements abstract tools.jackson.databind.deser.ValueInstantiator.createContextual.

Doc from tools.jackson.databind.deser.ValueInstantiator.createContextual.

"Contextualization" method that is called after construction but before first use, to allow instantiator access to context needed to possible resolve its dependencies.

Annotations
@Override
createFromBigDecimalback to summary
public Object createFromBigDecimal(DeserializationContext ctxt, BigDecimal value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromBigDecimal.

Annotations
@Override
createFromBigIntegerback to summary
public Object createFromBigInteger(DeserializationContext ctxt, BigInteger value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromBigInteger.

Annotations
@Override
createFromBooleanback to summary
public Object createFromBoolean(DeserializationContext ctxt, boolean value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromBoolean.

Annotations
@Override
createFromDoubleback to summary
public Object createFromDouble(DeserializationContext ctxt, double value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromDouble.

Annotations
@Override
createFromIntback to summary
public Object createFromInt(DeserializationContext ctxt, int value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromInt.

Annotations
@Override
createFromLongback to summary
public Object createFromLong(DeserializationContext ctxt, long value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromLong.

Annotations
@Override
createFromObjectWithback to summary
public Object createFromObjectWith(DeserializationContext ctxt, Object[] args) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromObjectWith.

Doc from tools.jackson.databind.deser.ValueInstantiator.createFromObjectWith.

Method called to create value instance from JSON Object when instantiation arguments are passed; this is done, for example when passing information specified with "Creator" annotations.

This method is called if getFromObjectArguments returns a non-empty List of arguments.

Annotations
@Override
createFromStringback to summary
public Object createFromString(DeserializationContext ctxt, String value) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createFromString.

Annotations
@Override
createUsingArrayDelegateback to summary
public Object createUsingArrayDelegate(DeserializationContext ctxt, Object delegate) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingArrayDelegate.

Doc from tools.jackson.databind.deser.ValueInstantiator.createUsingArrayDelegate.

Method to called to create value instance from JSON Array using an intermediate "delegate" value to pass to createor method

Annotations
@Override
createUsingDefaultback to summary
public Object createUsingDefault(DeserializationContext ctxt) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDefault.

Doc from tools.jackson.databind.deser.ValueInstantiator.createUsingDefault.

Method called to create value instance from a JSON value when no data needs to passed to creator (constructor, factory method); typically this will call the default constructor of the value object. It will only be used if more specific creator methods are not applicable; hence "default".

This method is called if getFromObjectArguments returns null or empty List.

Annotations
@Override
createUsingDefaultOrWithoutArgumentsback to summary
public Object createUsingDefaultOrWithoutArguments(DeserializationContext ctxt) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDefaultOrWithoutArguments.

Doc from tools.jackson.databind.deser.ValueInstantiator.createUsingDefaultOrWithoutArguments.

Combination of createUsingDefault and createFromObjectWith(DeserializationContext, Object[]) which will call former first, if possible; or latter if possible (with null arguments); and if neither works throw an exception.

Annotations
@Override
createUsingDelegateback to summary
public Object createUsingDelegate(DeserializationContext ctxt, Object delegate) throws JacksonException

Overrides tools.jackson.databind.deser.ValueInstantiator.createUsingDelegate.

Doc from tools.jackson.databind.deser.ValueInstantiator.createUsingDelegate.

Method to called to create value instance from JSON Object using an intermediate "delegate" value to pass to createor method

Annotations
@Override
getArrayDelegateCreatorback to summary
public AnnotatedWithParams getArrayDelegateCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateCreator.

Doc from tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "array delegate creator". Note that implementations not required to return actual object they use (or, they may use some other instantiation) method. That is, even if canCreateUsingArrayDelegate() returns true, this method may return null .

Annotations
@Override
getArrayDelegateTypeback to summary
public JavaType getArrayDelegateType(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateType.

Doc from tools.jackson.databind.deser.ValueInstantiator.getArrayDelegateType.

Method that can be used to determine what is the type of array delegate type to use, if any; if no delegates are used, will return null. If non-null type is returned, deserializer will bind JSON into specified type (using standard deserializer for that type), and pass that to instantiator.

Annotations
@Override
getDefaultCreatorback to summary
public AnnotatedWithParams getDefaultCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getDefaultCreator.

Doc from tools.jackson.databind.deser.ValueInstantiator.getDefaultCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "default creator" (creator that is called without arguments; typically default [zero-argument] constructor of the type). Note that implementations not required to return actual object they use (or, they may use some other instantiation) method. That is, even if canCreateUsingDefault() returns true, this method may return null .

Annotations
@Override
getDelegateCreatorback to summary
public AnnotatedWithParams getDelegateCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getDelegateCreator.

Doc from tools.jackson.databind.deser.ValueInstantiator.getDelegateCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "delegate creator". Note that implementations not required to return actual object they use (or, they may use some other instantiation) method. That is, even if canCreateUsingDelegate() returns true, this method may return null .

Annotations
@Override
getDelegateTypeback to summary
public JavaType getDelegateType(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getDelegateType.

Doc from tools.jackson.databind.deser.ValueInstantiator.getDelegateType.

Method that can be used to determine what is the type of delegate type to use, if any; if no delegates are used, will return null. If non-null type is returned, deserializer will bind JSON into specified type (using standard deserializer for that type), and pass that to instantiator.

Annotations
@Override
getFromObjectArgumentsback to summary
public SettableBeanProperty[] getFromObjectArguments(DeserializationConfig config)

Overrides tools.jackson.databind.deser.ValueInstantiator.getFromObjectArguments.

Doc from tools.jackson.databind.deser.ValueInstantiator.getFromObjectArguments.

Method called to determine types of instantiation arguments to use when creating instances with creator arguments (when canCreateFromObjectWith() returns true). These arguments are bound from JSON, using specified property types to locate deserializers.

Note

all properties will be of type tools.jackson.databind.deser.CreatorProperty.

Annotations
@Override
getValueClassback to summary
public Class<?> getValueClass()

Implements abstract tools.jackson.databind.deser.ValueInstantiator.getValueClass.

Doc from tools.jackson.databind.deser.ValueInstantiator.getValueClass.

Accessor for raw (type-erased) type of instances to create.

Annotations
@Override
getValueTypeDescback to summary
public String getValueTypeDesc()

Implements abstract tools.jackson.databind.deser.ValueInstantiator.getValueTypeDesc.

Doc from tools.jackson.databind.deser.ValueInstantiator.getValueTypeDesc.

Method that returns description of the value type this instantiator handles. Used for error messages, diagnostics.

Annotations
@Override
getWithArgsCreatorback to summary
public AnnotatedWithParams getWithArgsCreator()

Overrides tools.jackson.databind.deser.ValueInstantiator.getWithArgsCreator.

Doc from tools.jackson.databind.deser.ValueInstantiator.getWithArgsCreator.

Method that can be called to try to access member (constructor, static factory method) that is used as the "non-default creator" (constructor or factory method that takes one or more arguments). Note that implementations not required to return actual object they use (or, they may use some other instantiation) method. That is, even if canCreateFromObjectWith() returns true, this method may return null .

Annotations
@Override
rewrapCtorProblemback to summary
protected DatabindException rewrapCtorProblem(DeserializationContext ctxt, Throwable t)

Method that subclasses may call for standard handling of an exception thrown when calling constructor or factory method. Will unwrap ExceptionInInitializerError and InvocationTargetExceptions, then call wrapAsDatabindException.

tryConvertToDoubleback to summary
pack-priv static Double tryConvertToDouble(BigDecimal value)
wrapAsDatabindExceptionback to summary
protected DatabindException wrapAsDatabindException(DeserializationContext ctxt, Throwable t)

Helper method that will return given Throwable case as a DatabindException (if it is of that type), or call DeserializationContext#instantiationException(Class, Throwable) to produce and return suitable DatabindException.