com.fasterxml.jackson.databind.introspect

## Class BasicClassIntrospector

- java.lang.Object
- - com.fasterxml.jackson.databind.introspect.ClassIntrospector
  - - com.fasterxml.jackson.databind.introspect.BasicClassIntrospector

All Implemented Interfaces:
  Serializable

    public class BasicClassIntrospector
    extends ClassIntrospector
    implements Serializable

See Also:
  Serialized Form

### Nested Class Summary

### Nested classes/interfaces inherited from class com.fasterxml.jackson.databind.introspect.ClassIntrospector

`ClassIntrospector.MixInResolver`

### Field Summary

Fields
`protected static BasicBeanDescription` `BOOLEAN_DESC`
`protected static BasicBeanDescription` `INT_DESC`
`protected static BasicBeanDescription` `LONG_DESC`
`protected static BasicBeanDescription` `OBJECT_DESC`
`protected static BasicBeanDescription` `STRING_DESC`

### Constructor Summary

Constructors
Constructor and Description
`BasicClassIntrospector()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected BasicBeanDescription` `_findStdJdkCollectionDesc(MapperConfig<?> cfg, JavaType type)`
`protected BasicBeanDescription` `_findStdTypeDesc(MapperConfig<?> config, JavaType type)` Method called to see if type is one of core JDK types that we have cached for efficiency.
`protected boolean` `_isStdJDKCollection(JavaType type)` Helper method used to decide whether we can omit introspection for members (methods, fields, constructors); we may do so for a limited number of container types JDK provides.
`protected AnnotatedClass` `_resolveAnnotatedClass(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r)`
`protected AnnotatedClass` `_resolveAnnotatedWithoutSuperTypes(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r)`
`protected POJOPropertiesCollector` `collectProperties(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r, boolean forSerialization, String mutatorPrefix)`
`protected POJOPropertiesCollector` `collectPropertiesWithBuilder(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r, boolean forSerialization)`
`protected POJOPropertiesCollector` `constructPropertyCollector(MapperConfig<?> config, AnnotatedClass ac, JavaType type, boolean forSerialization, String mutatorPrefix)` Overridable method called for creating `POJOPropertiesCollector` instance to use; override is needed if a custom sub-class is to be used.
`ClassIntrospector` `copy()` Method that may be needed when `copy()`ing `ObjectMapper` instances.
`BasicBeanDescription` `forClassAnnotations(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that only has information regarding annotations class itself (or its supertypes) has, but nothing on methods or constructors.
`BasicBeanDescription` `forCreation(DeserializationConfig config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that has information necessary for creating instances of given class ("creator"), as well as class annotations, but no information on member methods
`BasicBeanDescription` `forDeserialization(DeserializationConfig config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that has all information needed for deserialization purposes.
`BasicBeanDescription` `forDeserializationWithBuilder(DeserializationConfig config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that has all information needed for constructing deserializers that use intermediate Builder objects.
`BasicBeanDescription` `forDirectClassAnnotations(MapperConfig<?> config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that only has information regarding annotations class itself has (but NOT including its supertypes), but nothing on methods or constructors.
`BasicBeanDescription` `forSerialization(SerializationConfig config, JavaType type, ClassIntrospector.MixInResolver r)` Factory method that constructs an introspector that has all information needed for serialization purposes.

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

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

### Field Detail

#### STRING_DESC

    protected static final BasicBeanDescription STRING_DESC

#### BOOLEAN_DESC

    protected static final BasicBeanDescription BOOLEAN_DESC

#### INT_DESC

    protected static final BasicBeanDescription INT_DESC

#### LONG_DESC

    protected static final BasicBeanDescription LONG_DESC

#### OBJECT_DESC

    protected static final BasicBeanDescription OBJECT_DESC

### Constructor Detail

#### BasicClassIntrospector

    public BasicClassIntrospector()

### Method Detail

#### copy

    public ClassIntrospector copy()

Description copied from class: `ClassIntrospector`
Method that may be needed when `copy()`ing `ObjectMapper` instances.

Specified by:
  `copy` in class `ClassIntrospector`

#### forSerialization

    public BasicBeanDescription forSerialization(SerializationConfig config,
                                                 JavaType type,
                                                 ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that has all information needed for serialization purposes.

Specified by:
  `forSerialization` in class `ClassIntrospector`

#### forDeserialization

    public BasicBeanDescription forDeserialization(DeserializationConfig config,
                                                   JavaType type,
                                                   ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that has all information needed for deserialization purposes.

Specified by:
  `forDeserialization` in class `ClassIntrospector`

#### forDeserializationWithBuilder

    public BasicBeanDescription forDeserializationWithBuilder(DeserializationConfig config,
                                                              JavaType type,
                                                              ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that has all information needed for constructing deserializers that use intermediate Builder objects.

Specified by:
  `forDeserializationWithBuilder` in class `ClassIntrospector`

#### forCreation

    public BasicBeanDescription forCreation(DeserializationConfig config,
                                            JavaType type,
                                            ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that has information necessary for creating instances of given class ("creator"), as well as class annotations, but no information on member methods

Specified by:
  `forCreation` in class `ClassIntrospector`

#### forClassAnnotations

    public BasicBeanDescription forClassAnnotations(MapperConfig<?> config,
                                                    JavaType type,
                                                    ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that only has information regarding annotations class itself (or its supertypes) has, but nothing on methods or constructors.

Specified by:
  `forClassAnnotations` in class `ClassIntrospector`

#### forDirectClassAnnotations

    public BasicBeanDescription forDirectClassAnnotations(MapperConfig<?> config,
                                                          JavaType type,
                                                          ClassIntrospector.MixInResolver r)

Description copied from class: `ClassIntrospector`
Factory method that constructs an introspector that only has information regarding annotations class itself has (but NOT including its supertypes), but nothing on methods or constructors.

Specified by:
  `forDirectClassAnnotations` in class `ClassIntrospector`

#### collectProperties

    protected POJOPropertiesCollector collectProperties(MapperConfig<?> config,
                                                        JavaType type,
                                                        ClassIntrospector.MixInResolver r,
                                                        boolean forSerialization,
                                                        String mutatorPrefix)

#### collectPropertiesWithBuilder

    protected POJOPropertiesCollector collectPropertiesWithBuilder(MapperConfig<?> config,
                                                                   JavaType type,
                                                                   ClassIntrospector.MixInResolver r,
                                                                   boolean forSerialization)

#### constructPropertyCollector

    protected POJOPropertiesCollector constructPropertyCollector(MapperConfig<?> config,
                                                                 AnnotatedClass ac,
                                                                 JavaType type,
                                                                 boolean forSerialization,
                                                                 String mutatorPrefix)

Overridable method called for creating `POJOPropertiesCollector` instance to use; override is needed if a custom sub-class is to be used.

#### _findStdTypeDesc

    protected BasicBeanDescription _findStdTypeDesc(MapperConfig<?> config,
                                                    JavaType type)

Method called to see if type is one of core JDK types that we have cached for efficiency.

#### _isStdJDKCollection

    protected boolean _isStdJDKCollection(JavaType type)

Helper method used to decide whether we can omit introspection for members (methods, fields, constructors); we may do so for a limited number of container types JDK provides.

#### _findStdJdkCollectionDesc

    protected BasicBeanDescription _findStdJdkCollectionDesc(MapperConfig<?> cfg,
                                                             JavaType type)

#### _resolveAnnotatedClass

    protected AnnotatedClass _resolveAnnotatedClass(MapperConfig<?> config,
                                                    JavaType type,
                                                    ClassIntrospector.MixInResolver r)

Since:
  2.9

#### _resolveAnnotatedWithoutSuperTypes

    protected AnnotatedClass _resolveAnnotatedWithoutSuperTypes(MapperConfig<?> config,
                                                                JavaType type,
                                                                ClassIntrospector.MixInResolver r)

Since:
  2.9