# Package com.fasterxml.jackson.databind.introspect

Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  ClassIntrospector.MixInResolver | Interface used for decoupling details of how mix-in annotation definitions are accessed (via this interface), and how they are stored (defined by classes that implement the interface)
  VisibilityChecker<T extends VisibilityChecker<T>> | Interface for object used for determine which property elements (methods, fields, constructors) can be auto-detected, with respect to their visibility modifiers.
  WithMember<T> |

- Class Summary
  Class | Description
  --- | ---
  Annotated | Shared base class used for anything on which annotations (included within a `AnnotationMap`).
  AnnotatedClass |
  AnnotatedConstructor |
  AnnotatedField | Object that represents non-static (and usually non-transient/volatile) fields of a class.
  AnnotatedMember | Intermediate base class for annotated entities that are members of a class; fields, methods and constructors.
  AnnotatedMethod |
  AnnotatedMethodMap | Simple helper class used to keep track of collection of `AnnotatedMethod`s, accessible by lookup.
  AnnotatedParameter | Object that represents method parameters, mostly so that associated annotations can be processed conveniently.
  AnnotatedWithParams | Intermediate base class that encapsulates features that constructors and methods share.
  AnnotationIntrospectorPair | 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.
  AnnotationMap | Simple helper class used to keep track of collection of Jackson Annotations associated with annotatable things (methods, constructors, classes).
  BasicBeanDescription | Default `BeanDescription` implementation.
  BasicClassIntrospector |
  BeanPropertyDefinition | Simple value classes that contain definitions of properties, used during introspection of properties to use for serialization and deserialization purposes.
  ClassIntrospector | Helper class used to introspect features of POJO value classes used with Jackson.
  JacksonAnnotationIntrospector | `AnnotationIntrospector` implementation that handles standard Jackson annotations.
  MemberKey | Helper class needed to be able to efficiently access class member functions (`Method`s and `Constructor`s) in `Map`s.
  NopAnnotationIntrospector | Dummy, "no-operation" implementation of `AnnotationIntrospector`.
  ObjectIdInfo | Container object that encapsulates information usually derived from `JsonIdentityInfo` annotation or its custom alternatives
  POJOPropertiesCollector | Helper class used for aggregating information about all possible properties of a POJO.
  POJOPropertyBuilder | Helper class used for aggregating information about a single potential POJO property.
  VisibilityChecker.Std | Default standard implementation is purely based on visibility modifier of given class members, and its configured minimum levels.

## Package com.fasterxml.jackson.databind.introspect Description

Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.

Beyond collecting annotations, additional "method annotation inheritance" is also supported: whereas regular JDK classes do not add annotations from overridden methods in any situation. But code in this package does. Similarly class-annotations are inherited properly from interfaces, in addition to abstract and concrete classes.

Copyright © 2014 FasterXML. All Rights Reserved.