java.lang.Object
tools.jackson.databind.deser.bean.CreatorCollector
Container class for storing information on creators (based on annotations,
visibility), to be able to build actual
ValueInstantiator later on.-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected SettableBeanProperty[]protected final JavaTypeType of bean being createdprotected final booleanprotected final AnnotatedWithParams[]Set of creators we have collected so farprotected SettableBeanProperty[]protected intBitmask of creators that were explicitly marked as creators; false for auto-detected (ones included base on naming and/or visibility, not annotation)protected final booleanprotected booleanprotected SettableBeanProperty[]protected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final intprotected static final String[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean_isEnumValueOf(AnnotatedWithParams creator) Helper method for recognizing `Enum.valueOf()` factory methodprotected void_reportDuplicateCreator(int typeIndex, boolean explicit, AnnotatedWithParams oldOne, AnnotatedWithParams newOne) voidaddBigDecimalCreator(AnnotatedWithParams creator, boolean explicit) voidaddBigIntegerCreator(AnnotatedWithParams creator, boolean explicit) voidaddBooleanCreator(AnnotatedWithParams creator, boolean explicit) voidaddDelegatingCreator(AnnotatedWithParams creator, boolean explicit, SettableBeanProperty[] injectables, int delegateeIndex) voidaddDoubleCreator(AnnotatedWithParams creator, boolean explicit) voidaddIntCreator(AnnotatedWithParams creator, boolean explicit) voidaddLongCreator(AnnotatedWithParams creator, boolean explicit) voidaddPropertyCreator(AnnotatedWithParams creator, boolean explicit, SettableBeanProperty[] properties) voidaddStringCreator(AnnotatedWithParams creator, boolean explicit) booleanbooleanbooleanvoidsetDefaultCreator(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 booleanverifyNonDup(AnnotatedWithParams newOne, int typeIndex, boolean explicit)
-
Field Details
-
C_DEFAULT
protected static final int C_DEFAULT- See Also:
-
C_STRING
protected static final int C_STRING- See Also:
-
C_INT
protected static final int C_INT- See Also:
-
C_LONG
protected static final int C_LONG- See Also:
-
C_BIG_INTEGER
protected static final int C_BIG_INTEGER- See Also:
-
C_DOUBLE
protected static final int C_DOUBLE- See Also:
-
C_BIG_DECIMAL
protected static final int C_BIG_DECIMAL- See Also:
-
C_BOOLEAN
protected static final int C_BOOLEAN- See Also:
-
C_DELEGATE
protected static final int C_DELEGATE- See Also:
-
C_PROPS
protected static final int C_PROPS- See Also:
-
C_ARRAY_DELEGATE
protected static final int C_ARRAY_DELEGATE- See Also:
-
TYPE_DESCS
-
_beanType
Type of bean being created -
_canFixAccess
protected final boolean _canFixAccess -
_forceAccess
protected final boolean _forceAccess -
_creators
Set of creators we have collected so far -
_explicitCreators
protected int _explicitCreatorsBitmask of creators that were explicitly marked as creators; false for auto-detected (ones included base on naming and/or visibility, not annotation) -
_hasNonDefaultCreator
protected boolean _hasNonDefaultCreator -
_delegateArgs
-
_arrayDelegateArgs
-
_propertyBasedArgs
-
-
Constructor Details
-
CreatorCollector
-
-
Method Details
-
constructValueInstantiator
-
setDefaultCreator
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 factory method.
-
addStringCreator
-
addIntCreator
-
addLongCreator
-
addBigIntegerCreator
-
addDoubleCreator
-
addBigDecimalCreator
-
addBooleanCreator
-
addDelegatingCreator
public void addDelegatingCreator(AnnotatedWithParams creator, boolean explicit, SettableBeanProperty[] injectables, int delegateeIndex) -
addPropertyCreator
public void addPropertyCreator(AnnotatedWithParams creator, boolean explicit, SettableBeanProperty[] properties) -
hasDefaultCreator
public boolean hasDefaultCreator() -
hasDelegatingCreator
public boolean hasDelegatingCreator() -
hasPropertyBasedCreator
public boolean hasPropertyBasedCreator() -
verifyNonDup
- Returns:
- True if specified Creator is to be used
-
_reportDuplicateCreator
protected void _reportDuplicateCreator(int typeIndex, boolean explicit, AnnotatedWithParams oldOne, AnnotatedWithParams newOne) -
_isEnumValueOf
Helper method for recognizing `Enum.valueOf()` factory method
-