Top Description Interfaces Annotations Classes Enums
[default module]

Package org.springframework.core.annotation

Annotations
@NonNullApi
@NonNullFields
Imports
org.springframework.lang.NonNullApi, .NonNullFields

Core support package for annotations, meta-annotations, and merged annotations with attribute overrides.

Interface Summary

Modifier and TypeInterface and Description
public interface
AnnotationFilter

Callback interface that can be used to filter specific annotation types.

pack-priv interface
AnnotationsProcessor<
the context type
C
,
the result type
R
>

Callback interface used to process annotations.

public interface
MergedAnnotation<
the annotation type
A extends Annotation
>

A single merged annotation returned from a MergedAnnotations collection.

public interface
MergedAnnotations

Provides access to a collection of merged annotations, usually obtained from a source such as a Class or Method.

public interface
MergedAnnotationSelector<
the annotation type
A extends Annotation
>

Strategy interface used to select between two MergedAnnotation instances.

pack-priv interface
ValueExtractor

Strategy API for extracting a value for an annotation attribute from a given source object which is typically an Annotation, Map, or TypeMappedAnnotation.

Annotation Summary

Modifier and TypeAnnotation and Description
public @interface
AliasFor

@AliasFor is an annotation that is used to declare aliases for annotation attributes.

public @interface
Order

@Order defines the sort order for an annotated component.

Class Summary

Modifier and TypeClass and Description
pack-priv abstract class
AbstractMergedAnnotation<
the annotation type
A extends Annotation
>

Abstract base class for MergedAnnotation implementations.

public abstract class
AnnotatedElementUtils

General utility methods for finding annotations, meta-annotations, and repeatable annotations on AnnotatedElements.

public class
AnnotatedMethod

A convenient wrapper for a Method handle, providing deep annotation introspection on methods and method parameters, including the exposure of interface-declared parameter annotations from the concrete target method.

public class
AnnotationAttributes

LinkedHashMap subclass representing annotation attribute key-value pairs as read by AnnotationUtils, AnnotatedElementUtils, and Spring's reflection- and ASM-based org.springframework.core.type.AnnotationMetadata implementations.

public class
AnnotationAwareOrderComparator

AnnotationAwareOrderComparator is an extension of OrderComparator that supports Spring's org.springframework.core.Ordered interface as well as the @Order and @Priority annotations, with an order value provided by an Ordered instance overriding a statically defined annotation value (if any).

public class
AnnotationConfigurationException

Thrown by AnnotationUtils and synthesized annotations if an annotation is improperly configured.

pack-priv abstract class
AnnotationsScanner

Scanner to search for relevant annotations in the annotation hierarchy of an AnnotatedElement.

pack-priv class
AnnotationTypeMapping

Provides mapping information for a single annotation (or meta-annotation) in the context of a root annotation type.

pack-priv class
AnnotationTypeMappings

Provides AnnotationTypeMapping information for a single source annotation type.

public abstract class
AnnotationUtils

General utility methods for working with annotations, handling meta-annotations, bridge methods (which the compiler generates for generic declarations) as well as super methods (for optional annotation inheritance).

pack-priv class
AttributeMethods

Provides a quick way to access the attribute methods of an Annotation with consistent ordering as well as a few useful utility methods.

public abstract class
MergedAnnotationCollectors

Collector implementations that provide various reduction operations for MergedAnnotation instances.

public abstract class
MergedAnnotationPredicates

Predicate implementations that provide various test operations for MergedAnnotations.

pack-priv class
MergedAnnotationsCollection

MergedAnnotations implementation backed by a Collection of MergedAnnotation instances that represent direct annotations.

public abstract class
MergedAnnotationSelectors

MergedAnnotationSelector implementations that provide various options for MergedAnnotation instances.

pack-priv class
MissingMergedAnnotation<
the annotation type
A extends Annotation
>

An AbstractMergedAnnotation used as the implementation of MergedAnnotation#missing().

public abstract class
OrderUtils

General utility for determining the order of an object based on its type declaration.

pack-priv class
public abstract class
RepeatableContainers

Strategy used to determine annotations that act as containers for other annotations.

pack-priv class
SynthesizedMergedAnnotationInvocationHandler<
the annotation type
A extends Annotation
>

InvocationHandler for an Annotation that Spring has synthesized (i.e. wrapped in a dynamic proxy) with additional functionality such as attribute alias handling.

public class
SynthesizingMethodParameter

A MethodParameter variant which synthesizes annotations that declare attribute aliases via @AliasFor.

pack-priv class
TypeMappedAnnotation<
the annotation type
A extends Annotation
>

MergedAnnotation that adapts attributes from a root annotation by applying the mapping and mirroring rules of an AnnotationTypeMapping.

pack-priv class
TypeMappedAnnotations

MergedAnnotations implementation that searches for and adapts annotations and meta-annotations using AnnotationTypeMappings.

Enum Summary

Modifier and TypeEnum and Description
pack-priv enum
IntrospectionFailureLogger

Log facade used to handle annotation introspection failures (in particular TypeNotPresentExceptions).