Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package com.fasterxml.jackson.databind.deser;
Interface for providers of ValueInstantiator instances. Implemented when an object wants to provide custom value instantiators, usually to support custom value types with alternate constructors, or which need specified post-processing after construction but before binding data.
public 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)

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)
Instantiator to use; either defaultInstantiator that was passed, or a custom variant; can not be null.
            BeanDescription beanDescValueInstantiator defaultInstantiator);

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.
    public static class Base implements ValueInstantiators
//      @Override
                BeanDescription beanDescValueInstantiator defaultInstantiator) {
            return defaultInstantiator;
New to GrepCode? Check out our FAQ X