Uses of Class org.codehaus.jackson.map.AnnotationIntrospector (Jackson JSON Processor)
Date: 2013-07-14

## Uses of Class
org.codehaus.jackson.map.AnnotationIntrospector

- Packages that use AnnotationIntrospector
  Package | Description
  --- | ---
  org.codehaus.jackson.jaxrs | Jackson-based JAX-RS provider that can automatically serialize and deserialize resources for JSON content type (MediaType).
  org.codehaus.jackson.map | Contains basic mapper (conversion) functionality that allows for converting between regular streaming json content and Java objects (beans or Tree Model: support for both is via `ObjectMapper` class, as well as convenience methods included in `JsonParser`
  org.codehaus.jackson.map.deser | Contains implementation classes of deserialization part of data binding.
  org.codehaus.jackson.map.introspect | Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.
  org.codehaus.jackson.map.jsontype | Package that contains interfaces that define how to implement functionality for dynamically resolving type during deserialization.
  org.codehaus.jackson.map.jsontype.impl | Package that contains standard implementations for `TypeResolverBuilder` and `TypeIdResolver`.
  org.codehaus.jackson.map.ser | Contains implementation classes of serialization part of data binding.
  org.codehaus.jackson.map.util | Utility classes for Mapper package.
  org.codehaus.jackson.xc | Package that contains XML Compatibility functionality for Jackson, such as handlers for JAXB annotations

- - ### Uses of AnnotationIntrospector in org.codehaus.jackson.jaxrs

    Fields in org.codehaus.jackson.jaxrs with type parameters of type AnnotationIntrospector
    Modifier and Type | Field and Description
    --- | ---
    `protected Class<? extends AnnotationIntrospector>` | MapperConfigurator.`_jaxbIntrospectorClass` To support optional dependency to Jackson-XC module (needed if and when JAXB annotations are used for configuration)

    Methods in org.codehaus.jackson.jaxrs that return AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `protected AnnotationIntrospector` | MapperConfigurator.`_resolveIntrospector(Annotations ann)`
    `protected AnnotationIntrospector` | MapperConfigurator.`_resolveIntrospectors(Annotations[] annotationsToUse)`

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map

    Subclasses of AnnotationIntrospector in org.codehaus.jackson.map
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `AnnotationIntrospector.Pair` Helper class that allows using 2 introspectors such that one introspector acts as the primary one to use; and second one as a fallback used if the primary does not provide conclusive or useful result for a method.

    Fields in org.codehaus.jackson.map declared as AnnotationIntrospector
    Modifier and Type | Field and Description
    --- | ---
    `protected AnnotationIntrospector` | MapperConfig.Base.`_annotationIntrospector` Introspector used for accessing annotation value based configuration.
    `protected AnnotationIntrospector` | AnnotationIntrospector.Pair.`_primary`
    `protected AnnotationIntrospector` | AnnotationIntrospector.Pair.`_secondary`
    `protected static AnnotationIntrospector` | ObjectMapper.`DEFAULT_ANNOTATION_INTROSPECTOR`

    Methods in org.codehaus.jackson.map that return AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `static AnnotationIntrospector` | AnnotationIntrospector.Pair.`create(AnnotationIntrospector primary, AnnotationIntrospector secondary)` Helper method for constructing a Pair from two given introspectors (if neither is null); or returning non-null introspector if one is null (and return just null if both are null)
    `AnnotationIntrospector` | SerializationConfig.`getAnnotationIntrospector()`
    `AnnotationIntrospector` | MapperConfig.`getAnnotationIntrospector()` Method for getting `AnnotationIntrospector` configured to introspect annotation values used for configuration.
    `AnnotationIntrospector` | MapperConfig.Base.`getAnnotationIntrospector()`
    `AnnotationIntrospector` | DeserializationConfig.`getAnnotationIntrospector()` Method for getting `AnnotationIntrospector` configured to introspect annotation values used for configuration.
    `static AnnotationIntrospector` | AnnotationIntrospector.`nopInstance()` Factory method for accessing "no operation" implementation of introspector: instance that will never find any annotation-based configuration.
    `static AnnotationIntrospector` | AnnotationIntrospector.`pair(AnnotationIntrospector a1, AnnotationIntrospector a2)`

    Methods in org.codehaus.jackson.map that return types with arguments of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.`allIntrospectors()` Method that can be used to collect all "real" introspectors that this introspector contains, if any; or this introspector if it is not a container.
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.Pair.`allIntrospectors()`
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.`allIntrospectors(Collection<AnnotationIntrospector> result)` Method that can be used to collect all "real" introspectors that this introspector contains, if any; or this introspector if it is not a container.
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.Pair.`allIntrospectors(Collection<AnnotationIntrospector> result)`

    Methods in org.codehaus.jackson.map with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `void` | Module.SetupContext.`appendAnnotationIntrospector(AnnotationIntrospector ai)` Method for registering specified `AnnotationIntrospector` as the lowest priority introspector, chained with existing introspector(s) and called as fallback for cases not otherwise handled.
    `void` | MapperConfig.`appendAnnotationIntrospector(AnnotationIntrospector introspector)` Deprecated. Since 1.9 use `MapperConfig.withAppendedAnnotationIntrospector(AnnotationIntrospector)` instead; this method is deprecated as it changes state, preventing immutability of instances
    `static AnnotationIntrospector` | AnnotationIntrospector.Pair.`create(AnnotationIntrospector primary, AnnotationIntrospector secondary)` Helper method for constructing a Pair from two given introspectors (if neither is null); or returning non-null introspector if one is null (and return just null if both are null)
    `void` | Module.SetupContext.`insertAnnotationIntrospector(AnnotationIntrospector ai)` Method for registering specified `AnnotationIntrospector` as the highest priority introspector (will be chained with existing introspector(s) which will be used as fallbacks for cases this introspector does not handle)
    `void` | MapperConfig.`insertAnnotationIntrospector(AnnotationIntrospector introspector)` Deprecated. Since 1.9 use `MapperConfig.withInsertedAnnotationIntrospector(AnnotationIntrospector)` instead; this method is deprecated as it changes state, preventing immutability of instances
    `static AnnotationIntrospector` | AnnotationIntrospector.`pair(AnnotationIntrospector a1, AnnotationIntrospector a2)`
    `ObjectMapper` | ObjectMapper.`setAnnotationIntrospector(AnnotationIntrospector ai)` Method for changing `AnnotationIntrospector` used by this mapper instance for both serialization and deserialization
    `void` | MapperConfig.`setAnnotationIntrospector(AnnotationIntrospector ai)` Deprecated. Since 1.8, use either `MapperConfig.withAnnotationIntrospector(AnnotationIntrospector)` or Module API instead
    `SerializationConfig` | SerializationConfig.`withAnnotationIntrospector(AnnotationIntrospector ai)`
    `abstract T` | MapperConfig.`withAnnotationIntrospector(AnnotationIntrospector ai)` Method for constructing and returning a new instance with different `AnnotationIntrospector` to use (replacing old one).
    `MapperConfig.Base` | MapperConfig.Base.`withAnnotationIntrospector(AnnotationIntrospector ai)`
    `DeserializationConfig` | DeserializationConfig.`withAnnotationIntrospector(AnnotationIntrospector ai)`
    `SerializationConfig` | SerializationConfig.`withAppendedAnnotationIntrospector(AnnotationIntrospector ai)`
    `abstract T` | MapperConfig.`withAppendedAnnotationIntrospector(AnnotationIntrospector introspector)` Method for constructing and returning a new instance with additional `AnnotationIntrospector` appended (as the lowest priority one)
    `MapperConfig.Base` | MapperConfig.Base.`withAppendedAnnotationIntrospector(AnnotationIntrospector ai)`
    `DeserializationConfig` | DeserializationConfig.`withAppendedAnnotationIntrospector(AnnotationIntrospector ai)`
    `SerializationConfig` | SerializationConfig.`withInsertedAnnotationIntrospector(AnnotationIntrospector ai)`
    `abstract T` | MapperConfig.`withInsertedAnnotationIntrospector(AnnotationIntrospector introspector)` Method for constructing and returning a new instance with additional `AnnotationIntrospector` inserted (as the highest priority one)
    `MapperConfig.Base` | MapperConfig.Base.`withInsertedAnnotationIntrospector(AnnotationIntrospector ai)`
    `DeserializationConfig` | DeserializationConfig.`withInsertedAnnotationIntrospector(AnnotationIntrospector ai)`

    Method parameters in org.codehaus.jackson.map with type arguments of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.`allIntrospectors(Collection<AnnotationIntrospector> result)` Method that can be used to collect all "real" introspectors that this introspector contains, if any; or this introspector if it is not a container.
    `Collection<AnnotationIntrospector>` | AnnotationIntrospector.Pair.`allIntrospectors(Collection<AnnotationIntrospector> result)`

    Constructors in org.codehaus.jackson.map with parameters of type AnnotationIntrospector
    Constructor and Description
    `AnnotationIntrospector.Pair(AnnotationIntrospector p, AnnotationIntrospector s)`
    `DeserializationConfig(ClassIntrospector<? extends BeanDescription> intr, AnnotationIntrospector annIntr, VisibilityChecker<?> vc, SubtypeResolver subtypeResolver, PropertyNamingStrategy propertyNamingStrategy, TypeFactory typeFactory, HandlerInstantiator handlerInstantiator)` Constructor used by ObjectMapper to create default configuration object instance.
    `MapperConfig.Base(ClassIntrospector<? extends BeanDescription> ci, AnnotationIntrospector ai, VisibilityChecker<?> vc, PropertyNamingStrategy pns, TypeFactory tf, TypeResolverBuilder<?> typer, DateFormat dateFormat, HandlerInstantiator hi)`
    `MapperConfig(ClassIntrospector<? extends BeanDescription> ci, AnnotationIntrospector ai, VisibilityChecker<?> vc, SubtypeResolver str, PropertyNamingStrategy pns, TypeFactory tf, HandlerInstantiator hi)`
    `SerializationConfig(ClassIntrospector<? extends BeanDescription> intr, AnnotationIntrospector annIntr, VisibilityChecker<?> vc, SubtypeResolver subtypeResolver, PropertyNamingStrategy propertyNamingStrategy, TypeFactory typeFactory, HandlerInstantiator handlerInstantiator)` Constructor used by ObjectMapper to create default configuration object instance.

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.deser

    Methods in org.codehaus.jackson.map.deser with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | BeanDeserializerFactory.`_addDeserializerConstructors(DeserializationConfig config, BasicBeanDescription beanDesc, VisibilityChecker<?> vchecker, AnnotationIntrospector intr, CreatorCollector creators)`
    `protected void` | BeanDeserializerFactory.`_addDeserializerFactoryMethods(DeserializationConfig config, BasicBeanDescription beanDesc, VisibilityChecker<?> vchecker, AnnotationIntrospector intr, CreatorCollector creators)`
    `protected boolean` | BeanDeserializerFactory.`_handleSingleArgumentConstructor(DeserializationConfig config, BasicBeanDescription beanDesc, VisibilityChecker<?> vchecker, AnnotationIntrospector intr, CreatorCollector creators, AnnotatedConstructor ctor, boolean isCreator, boolean isVisible)`
    `protected boolean` | BeanDeserializerFactory.`_handleSingleArgumentFactory(DeserializationConfig config, BasicBeanDescription beanDesc, VisibilityChecker<?> vchecker, AnnotationIntrospector intr, CreatorCollector creators, AnnotatedMethod factory, boolean isCreator)`

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.introspect

    Subclasses of AnnotationIntrospector in org.codehaus.jackson.map.introspect
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JacksonAnnotationIntrospector` `AnnotationIntrospector` implementation that handles standard Jackson annotations.
    `class` | `NopAnnotationIntrospector` Dummy, "no-operation" implementation of `AnnotationIntrospector`.

    Fields in org.codehaus.jackson.map.introspect declared as AnnotationIntrospector
    Modifier and Type | Field and Description
    --- | ---
    `protected AnnotationIntrospector` | POJOPropertiesCollector.`_annotationIntrospector`
    `protected AnnotationIntrospector` | BasicBeanDescription.`_annotationIntrospector`
    `protected AnnotationIntrospector` | AnnotatedClass.`_annotationIntrospector` Filter used to determine which annotations to gather; used to optimize things so that unnecessary annotations are ignored.

    Methods in org.codehaus.jackson.map.introspect that return AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `AnnotationIntrospector` | POJOPropertiesCollector.`getAnnotationIntrospector()`

    Methods in org.codehaus.jackson.map.introspect with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `static AnnotatedClass` | AnnotatedClass.`construct(Class<?> cls, AnnotationIntrospector aintr, ClassIntrospector.MixInResolver mir)` Factory method that instantiates an instance.
    `static AnnotatedClass` | AnnotatedClass.`constructWithoutSuperTypes(Class<?> cls, AnnotationIntrospector aintr, ClassIntrospector.MixInResolver mir)` Method similar to `AnnotatedClass.construct(java.lang.Class<?>, org.codehaus.jackson.map.AnnotationIntrospector, org.codehaus.jackson.map.ClassIntrospector.MixInResolver)`, but that will NOT include information from supertypes; only class itself and any direct mix-ins it may have.

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.jsontype

    Methods in org.codehaus.jackson.map.jsontype with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `abstract Collection<NamedType>` | SubtypeResolver.`collectAndResolveSubtypes(AnnotatedClass basetype, MapperConfig<?> config, AnnotationIntrospector ai)` Method for finding out all reachable subtypes for given type.
    `abstract Collection<NamedType>` | SubtypeResolver.`collectAndResolveSubtypes(AnnotatedMember property, MapperConfig<?> config, AnnotationIntrospector ai)` Method for finding out all reachable subtypes for a property specified by given element (method or field)

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.jsontype.impl

    Methods in org.codehaus.jackson.map.jsontype.impl with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | StdSubtypeResolver.`_collectAndResolve(AnnotatedClass annotatedType, NamedType namedType, MapperConfig<?> config, AnnotationIntrospector ai, HashMap<NamedType,NamedType> collectedSubtypes)` Method called to find subtypes for a specific type (class)
    `Collection<NamedType>` | StdSubtypeResolver.`collectAndResolveSubtypes(AnnotatedClass type, MapperConfig<?> config, AnnotationIntrospector ai)`
    `Collection<NamedType>` | StdSubtypeResolver.`collectAndResolveSubtypes(AnnotatedMember property, MapperConfig<?> config, AnnotationIntrospector ai)`

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.ser

    Fields in org.codehaus.jackson.map.ser declared as AnnotationIntrospector
    Modifier and Type | Field and Description
    --- | ---
    `protected AnnotationIntrospector` | PropertyBuilder.`_annotationIntrospector`

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.map.util

    Methods in org.codehaus.jackson.map.util with parameters of type AnnotationIntrospector
    Modifier and Type | Method and Description
    --- | ---
    `static EnumValues` | EnumValues.`construct(Class<Enum<?>> enumClass, AnnotationIntrospector intr)`
    `static <ET extends Enum<ET>> EnumResolver<ET>` | EnumResolver.`constructFor(Class<ET> enumCls, AnnotationIntrospector ai)` Factory method for constructing resolver that maps from Enum.name() into Enum value
    `static EnumValues` | EnumValues.`constructFromName(Class<Enum<?>> enumClass, AnnotationIntrospector intr)`
    `static EnumValues` | EnumValues.`constructFromToString(Class<Enum<?>> enumClass, AnnotationIntrospector intr)`
    `static EnumResolver<?>` | EnumResolver.`constructUnsafe(Class<?> rawEnumCls, AnnotationIntrospector ai)` This method is needed because of the dynamic nature of constructing Enum resolvers.

  - ### Uses of AnnotationIntrospector in org.codehaus.jackson.xc

    Subclasses of AnnotationIntrospector in org.codehaus.jackson.xc
    Modifier and Type | Class and Description
    --- | ---
    `class` | `JaxbAnnotationIntrospector` Annotation introspector that leverages JAXB annotations where applicable to JSON mapping.