com.fasterxml.jackson.databind.deser.impl

## Class CreatorCollector.StdTypeConstructor

- java.lang.Object
- - com.fasterxml.jackson.databind.introspect.Annotated
  - - com.fasterxml.jackson.databind.introspect.AnnotatedMember
    - - com.fasterxml.jackson.databind.introspect.AnnotatedWithParams
      - - com.fasterxml.jackson.databind.deser.impl.CreatorCollector.StdTypeConstructor

- All Implemented Interfaces:
    Serializable
  Enclosing class:
    CreatorCollector

      protected static final class CreatorCollector.StdTypeConstructor
      extends AnnotatedWithParams
      implements Serializable

  Replacement for default constructor to use for a small set of "well-known" types.

  Note: replaces earlier `Vanilla` `ValueInstantiator` implementation

  Since:
    2.8.1 (replacing earlier `Vanilla` instantiator
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `TYPE_ARRAY_LIST`
    `static int` | `TYPE_HASH_MAP`
    `static int` | `TYPE_LINKED_HASH_MAP`

    - ### Fields inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedWithParams

      `_paramAnnotations`

    - ### Fields inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedMember

      `_annotations, _typeContext`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `StdTypeConstructor(AnnotatedWithParams base, int t)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Object` | `_construct()`
    `Object` | `call()` Method that can be used to (try to) call this object without arguments.
    `Object` | `call(Object[] args)` Method that can be used to (try to) call this object with specified arguments.
    `Object` | `call1(Object arg)` Method that can be used to (try to) call this object with single arguments.
    `boolean` | `equals(Object o)`
    `AnnotatedElement` | `getAnnotated()` Method that can be used to find actual JDK element that this instance represents.
    `Class<?>` | `getDeclaringClass()` Actual physical class in which this memmber was declared.
    `Type` | `getGenericParameterType(int index)` Deprecated.
    `Member` | `getMember()`
    `protected int` | `getModifiers()`
    `String` | `getName()`
    `int` | `getParameterCount()`
    `JavaType` | `getParameterType(int index)`
    `Class<?>` | `getRawParameterType(int index)`
    `Class<?>` | `getRawType()` "Raw" type (type-erased class) of the annotated element; definition of what exactly this means depends on sub-class.
    `JavaType` | `getType()` Full generic type of the annotated element; definition of what exactly this means depends on sub-class.
    `Object` | `getValue(Object pojo)` Optional method that can be used to access the value of this member on given object, if this is a supported operation for member type.
    `int` | `hashCode()`
    `void` | `setValue(Object pojo, Object value)` Optional method that can be used to assign value of this member on given object, if this is a supported operation for member type.
    `String` | `toString()`
    `static AnnotatedWithParams` | `tryToOptimize(AnnotatedWithParams src)`
    `Annotated` | `withAnnotations(AnnotationMap fallback)` Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.

    - ### Methods inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedWithParams

      `addOrOverrideParam, getAnnotationCount, getParameter, getParameterAnnotations, replaceParameterAnnotations`

    - ### Methods inherited from class com.fasterxml.jackson.databind.introspect.AnnotatedMember

      `annotations, fixAccess, getAllAnnotations, getAnnotation, getFullName, getTypeContext, hasAnnotation, hasOneOf`

    - ### Methods inherited from class com.fasterxml.jackson.databind.introspect.Annotated

      `getGenericType, getType, isPublic`

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

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### TYPE_ARRAY_LIST

          public static final int TYPE_ARRAY_LIST

      See Also:
        Constant Field Values

    - #### TYPE_HASH_MAP

          public static final int TYPE_HASH_MAP

      See Also:
        Constant Field Values

    - #### TYPE_LINKED_HASH_MAP

          public static final int TYPE_LINKED_HASH_MAP

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### StdTypeConstructor

          public StdTypeConstructor(AnnotatedWithParams base,
                                    int t)

  - ### Method Detail

    - #### tryToOptimize

          public static AnnotatedWithParams tryToOptimize(AnnotatedWithParams src)

    - #### _construct

          protected final Object _construct()

    - #### getParameterCount

          public int getParameterCount()

      Specified by:
        `getParameterCount` in class `AnnotatedWithParams`

    - #### getRawParameterType

          public Class<?> getRawParameterType(int index)

      Specified by:
        `getRawParameterType` in class `AnnotatedWithParams`

    - #### getParameterType

          public JavaType getParameterType(int index)

      Specified by:
        `getParameterType` in class `AnnotatedWithParams`

    - #### getGenericParameterType

          @Deprecated
          public Type getGenericParameterType(int index)

      Deprecated.
      Specified by:
        `getGenericParameterType` in class `AnnotatedWithParams`

    - #### call

          public Object call()
                      throws Exception

      Description copied from class: `AnnotatedWithParams`
      Method that can be used to (try to) call this object without arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

      Note: only works for constructors and static methods.

      Specified by:
        `call` in class `AnnotatedWithParams`
      Throws:
        `Exception`

    - #### call

          public Object call(Object[] args)
                      throws Exception

      Description copied from class: `AnnotatedWithParams`
      Method that can be used to (try to) call this object with specified arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

      Note: only works for constructors and static methods.

      Specified by:
        `call` in class `AnnotatedWithParams`
      Throws:
        `Exception`

    - #### call1

          public Object call1(Object arg)
                       throws Exception

      Description copied from class: `AnnotatedWithParams`
      Method that can be used to (try to) call this object with single arguments. This may succeed or fail, depending on expected number of arguments: caller needs to take care to pass correct number. Exceptions are thrown directly from actual low-level call.

      Note: only works for constructors and static methods.

      Specified by:
        `call1` in class `AnnotatedWithParams`
      Throws:
        `Exception`

    - #### getDeclaringClass

          public Class<?> getDeclaringClass()

      Description copied from class: `AnnotatedMember`
      Actual physical class in which this memmber was declared.
      Specified by:
        `getDeclaringClass` in class `AnnotatedMember`

    - #### getMember

          public Member getMember()

      Specified by:
        `getMember` in class `AnnotatedMember`

    - #### setValue

          public void setValue(Object pojo,
                               Object value)
                        throws UnsupportedOperationException,
                               IllegalArgumentException

      Description copied from class: `AnnotatedMember`
      Optional method that can be used to assign value of this member on given object, if this is a supported operation for member type.

      This is implemented for fields and single-argument member methods; but not for constructor parameters or other types of methods (like static methods)

      Specified by:
        `setValue` in class `AnnotatedMember`
      Throws:
        `UnsupportedOperationException`
        `IllegalArgumentException`

    - #### getValue

          public Object getValue(Object pojo)
                          throws UnsupportedOperationException,
                                 IllegalArgumentException

      Description copied from class: `AnnotatedMember`
      Optional method that can be used to access the value of this member on given object, if this is a supported operation for member type.

      This is implemented for fields and no-argument member methods; but not for constructor parameters or other types of methods (like static methods)

      Specified by:
        `getValue` in class `AnnotatedMember`
      Throws:
        `UnsupportedOperationException`
        `IllegalArgumentException`

    - #### withAnnotations

          public Annotated withAnnotations(AnnotationMap fallback)

      Description copied from class: `AnnotatedMember`
      Fluent factory method that will construct a new instance that uses specified instance annotations instead of currently configured ones.
      Specified by:
        `withAnnotations` in class `AnnotatedMember`

    - #### getAnnotated

          public AnnotatedElement getAnnotated()

      Description copied from class: `Annotated`
      Method that can be used to find actual JDK element that this instance represents. It is non-null, except for method/constructor parameters which do not have a JDK counterpart.
      Specified by:
        `getAnnotated` in class `Annotated`

    - #### getModifiers

          protected int getModifiers()

      Specified by:
        `getModifiers` in class `Annotated`

    - #### getName

          public String getName()

      Specified by:
        `getName` in class `Annotated`

    - #### getType

          public JavaType getType()

      Description copied from class: `Annotated`
      Full generic type of the annotated element; definition of what exactly this means depends on sub-class.
      Specified by:
        `getType` in class `Annotated`

    - #### getRawType

          public Class<?> getRawType()

      Description copied from class: `Annotated`
      "Raw" type (type-erased class) of the annotated element; definition of what exactly this means depends on sub-class.
      Specified by:
        `getRawType` in class `Annotated`

    - #### equals

          public boolean equals(Object o)

      Specified by:
        `equals` in class `Annotated`

    - #### hashCode

          public int hashCode()

      Specified by:
        `hashCode` in class `Annotated`

    - #### toString

          public String toString()

      Specified by:
        `toString` in class `Annotated`

Copyright © 2008–2018 FasterXML. All rights reserved.