Top Description Interfaces Classes
module jackson.databind

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.

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.

Interface Summary

Modifier and TypeInterface and Description
public interface
TypeResolutionContext

Interface that defines API used by members (like AnnotatedMethod) to dynamically resolve types they have.

public 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.

public interface

Class Summary

Modifier and TypeClass and Description
public abstract class
AccessorNamingStrategy

API for handlers used to "mangle" names of "getter" and "setter" methods to find implicit property names.

public abstract class
Annotated

Shared base class used for anything on which annotations (included within a AnnotationMap).

public class
AnnotatedAndMetadata<A extends Annotated, M>

Silly little "Pair" class needed for 2-element tuples (without adding dependency to one of 3rd party packages that has one).

public class
public class
AnnotatedClassResolver

Helper class that contains logic for resolving annotations to construct AnnotatedClass instances.

public class
pack-priv class
AnnotatedCreatorCollector

Helper class used to contain details of how Creators (annotated constructors and static methods) are discovered to be accessed by and via AnnotatedClass.

public class
AnnotatedField

Object that represents non-static (and usually non-transient/volatile) fields of a class.

public class
public abstract class
AnnotatedMember

Intermediate base class for annotated entities that are members of a class; fields, methods and constructors.

public class
public class
public class
AnnotatedMethodMap

Simple helper class used to keep track of collection of AnnotatedMethods, accessible by lookup.

public class
AnnotatedParameter

Object that represents method parameters, mostly so that associated annotations can be processed conveniently.

public abstract class
AnnotatedWithParams

Intermediate base class that encapsulates features that constructors and methods share.

public abstract class
AnnotationCollector

Helper class used to collect annotations to be stored as com.fasterxml.jackson.databind.util.Annotations (like AnnotationMap).

public class
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.

public class
AnnotationMap

Simple helper class used to keep track of collection of Jackson Annotations associated with annotatable things (methods, constructors, classes).

public class
BasicBeanDescription

Default BeanDescription implementation used by Jackson.

public class
public abstract class
BeanPropertyDefinition

Simple value classes that contain definitions of properties, used during introspection of properties to use for serialization and deserialization purposes.

public abstract class
ClassIntrospector

Helper class used to introspect features of POJO value classes used with Jackson.

pack-priv class
public abstract class
ConcreteBeanPropertyBase

Intermediate BeanProperty class shared by concrete readable- and writable property implementations for sharing common functionality.

public class
DefaultAccessorNamingStrategy

Default AccessorNamingStrategy used by Jackson: to be used either as-is, or as base-class with overrides.

public class
EnumNamingStrategyFactory

Helper class used for aggregating information about all possible properties of a Enum.

public class
JacksonAnnotationIntrospector

AnnotationIntrospector implementation that handles standard Jackson annotations.

public class
MemberKey

Helper class needed to be able to efficiently access class member functions (Methods and Constructors) in java.util.Maps.

pack-priv class
MethodGenericTypeResolver

Internal utility functionality to handle type resolution for method type variables based on the requested result type: this is needed to work around the problem of static factory methods not being able to use class type variable bindings (see [databind#2895] for more).

public abstract class
NopAnnotationIntrospector

Dummy, "no-operation" implementation of AnnotationIntrospector.

public class
ObjectIdInfo

Container object that encapsulates information usually derived from JsonIdentityInfo annotation or its custom alternatives

public class
POJOPropertiesCollector

Helper class used for aggregating information about all possible properties of a POJO.

public class
POJOPropertyBuilder

Helper class used for aggregating information about a single potential POJO property.

public class
PotentialCreator

Information about a single Creator (constructor or factory method), kept during property introspection.

public class
public class
SimpleMixInResolver

Simple implementation of ClassIntrospector.MixInResolver that just uses a java.util.Map for containing mapping from target to mix-in classes.

public class
VirtualAnnotatedMember

Placeholder used by virtual properties as placeholder for underlying AnnotatedMember.