com.fasterxml.jackson.databind.deser.impl

## Class CreatorCollector

- java.lang.Object
- - com.fasterxml.jackson.databind.deser.impl.CreatorCollector

    public class CreatorCollector
    extends Object

Container class for storing information on creators (based on annotations, visibility), to be able to build actual instantiator later on.

### Nested Class Summary

Nested Classes
`protected static class` `CreatorCollector.Vanilla`

### Field Summary

Fields
`protected BeanDescription` `_beanDesc`
`protected AnnotatedWithParams` `_booleanCreator`
`protected boolean` `_canFixAccess`
`protected AnnotatedWithParams` `_defaultConstructor` Reference to the default creator (constructor or factory method).
`protected CreatorProperty[]` `_delegateArgs`
`protected AnnotatedWithParams` `_delegateCreator`
`protected AnnotatedWithParams` `_doubleCreator`
`protected AnnotatedParameter` `_incompleteParameter`
`protected AnnotatedWithParams` `_intCreator`
`protected AnnotatedWithParams` `_longCreator`
`protected CreatorProperty[]` `_propertyBasedArgs`
`protected AnnotatedWithParams` `_propertyBasedCreator`
`protected AnnotatedWithParams` `_stringCreator`

### Constructor Summary

Constructors
Constructor and Description
`CreatorCollector(BeanDescription beanDesc, boolean canFixAccess)`

### Method Summary

Methods
`void` `addBooleanCreator(AnnotatedWithParams creator)`
`void` `addDelegatingCreator(AnnotatedWithParams creator, CreatorProperty[] injectables)`
`void` `addDoubleCreator(AnnotatedWithParams creator)`
`void` `addIncompeteParameter(AnnotatedParameter parameter)`
`void` `addIntCreator(AnnotatedWithParams creator)`
`void` `addLongCreator(AnnotatedWithParams creator)`
`void` `addPropertyCreator(AnnotatedWithParams creator, CreatorProperty[] properties)`
`void` `addStringCreator(AnnotatedWithParams creator)`
`ValueInstantiator` `constructValueInstantiator(DeserializationConfig config)`
`boolean` `hasDefaultCreator()`
`void` `setDefaultCreator(AnnotatedWithParams creator)` Method called to indicate the default creator: no-arguments constructor or factory method that is called to instantiate a value before populating it with data.
`protected AnnotatedWithParams` `verifyNonDup(AnnotatedWithParams newOne, AnnotatedWithParams oldOne, String type)`

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

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

### Field Detail

#### _beanDesc

    protected final BeanDescription _beanDesc

#### _canFixAccess

    protected final boolean _canFixAccess

#### _defaultConstructor

    protected AnnotatedWithParams _defaultConstructor

Reference to the default creator (constructor or factory method).

Note: name is a misnomer, after resolving of [JACKSON-850], since this can also point to factory method.

#### _stringCreator

    protected AnnotatedWithParams _stringCreator

#### _intCreator

    protected AnnotatedWithParams _intCreator

#### _longCreator

    protected AnnotatedWithParams _longCreator

#### _doubleCreator

    protected AnnotatedWithParams _doubleCreator

#### _booleanCreator

    protected AnnotatedWithParams _booleanCreator

#### _delegateCreator

    protected AnnotatedWithParams _delegateCreator

#### _delegateArgs

    protected CreatorProperty[] _delegateArgs

#### _propertyBasedCreator

    protected AnnotatedWithParams _propertyBasedCreator

#### _propertyBasedArgs

    protected CreatorProperty[] _propertyBasedArgs

#### _incompleteParameter

    protected AnnotatedParameter _incompleteParameter

### Constructor Detail

#### CreatorCollector

    public CreatorCollector(BeanDescription beanDesc,
                    boolean canFixAccess)

### Method Detail

#### constructValueInstantiator

    public ValueInstantiator constructValueInstantiator(DeserializationConfig config)

#### setDefaultCreator

    public void setDefaultCreator(AnnotatedWithParams creator)

Method called to indicate the default creator: no-arguments constructor or factory method that is called to instantiate a value before populating it with data. Default creator is only used if no other creators are indicated.

Parameters:
  `creator` - Creator method; no-arguments constructor or static factory method.

#### addStringCreator

    public void addStringCreator(AnnotatedWithParams creator)

#### addIntCreator

    public void addIntCreator(AnnotatedWithParams creator)

#### addLongCreator

    public void addLongCreator(AnnotatedWithParams creator)

#### addDoubleCreator

    public void addDoubleCreator(AnnotatedWithParams creator)

#### addBooleanCreator

    public void addBooleanCreator(AnnotatedWithParams creator)

#### addDelegatingCreator

    public void addDelegatingCreator(AnnotatedWithParams creator,
                            CreatorProperty[] injectables)

#### addPropertyCreator

    public void addPropertyCreator(AnnotatedWithParams creator,
                          CreatorProperty[] properties)

#### addIncompeteParameter

    public void addIncompeteParameter(AnnotatedParameter parameter)

#### hasDefaultCreator

    public boolean hasDefaultCreator()

Since:
  2.1

#### verifyNonDup

    protected AnnotatedWithParams verifyNonDup(AnnotatedWithParams newOne,
                                   AnnotatedWithParams oldOne,
                                   String type)