Package | Description |
---|---|
org.springframework.beans.factory.annotation |
Support package for annotation-driven bean configuration.
|
org.springframework.core.annotation |
Core support package for annotations, meta-annotations, and merged
annotations with attribute overrides.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
AutowiredAnnotationBeanPostProcessor.determineRequiredStatus(MergedAnnotation<?> ann)
Determine if the annotated field or method requires its dependency.
|
Modifier and Type | Method and Description |
---|---|
MergedAnnotation<A> |
MergedAnnotation.filterAttributes(Predicate<String> predicate)
Create a new view of the annotation with only attributes that match the
given predicate.
|
MergedAnnotation<A> |
MergedAnnotation.filterDefaultValues()
Create a new view of the annotation with all attributes that have default
values removed.
|
static <A extends Annotation> |
MergedAnnotation.from(A annotation)
Create a new
MergedAnnotation instance from the specified
annotation. |
static <A extends Annotation> |
MergedAnnotation.from(Object source,
A annotation)
Create a new
MergedAnnotation instance from the specified
annotation. |
<A extends Annotation> |
MergedAnnotations.get(Class<A> annotationType)
|
<A extends Annotation> |
MergedAnnotations.get(Class<A> annotationType,
Predicate<? super MergedAnnotation<A>> predicate)
|
<A extends Annotation> |
MergedAnnotations.get(Class<A> annotationType,
Predicate<? super MergedAnnotation<A>> predicate,
MergedAnnotationSelector<A> selector)
Get a matching annotation or meta-annotation of the specified type, or
missing() if none is present. |
<A extends Annotation> |
MergedAnnotations.get(String annotationType)
|
<A extends Annotation> |
MergedAnnotations.get(String annotationType,
Predicate<? super MergedAnnotation<A>> predicate)
|
<A extends Annotation> |
MergedAnnotations.get(String annotationType,
Predicate<? super MergedAnnotation<A>> predicate,
MergedAnnotationSelector<A> selector)
Get a matching annotation or meta-annotation of the specified type, or
missing() if none is present. |
<T extends Annotation> |
MergedAnnotation.getAnnotation(String attributeName,
Class<T> type)
Get a required annotation attribute value from the annotation.
|
<T extends Annotation> |
MergedAnnotation.getAnnotationArray(String attributeName,
Class<T> type)
Get a required annotation array attribute value from the annotation.
|
MergedAnnotation<?> |
MergedAnnotation.getMetaSource()
Get the source of the meta-annotation, or
null if the
annotation is not meta-present. |
MergedAnnotation<?> |
MergedAnnotation.getRoot()
Get the root annotation, i.e.
|
static <A extends Annotation> |
MergedAnnotation.missing()
Create a
MergedAnnotation that represents a missing annotation
(i.e. |
static <A extends Annotation> |
MergedAnnotation.of(AnnotatedElement source,
Class<A> annotationType,
Map<String,?> attributes)
Create a new
MergedAnnotation instance of the specified
annotation type with attribute values supplied by a map. |
static <A extends Annotation> |
MergedAnnotation.of(Class<A> annotationType)
Create a new
MergedAnnotation instance of the specified
annotation type. |
static <A extends Annotation> |
MergedAnnotation.of(Class<A> annotationType,
Map<String,?> attributes)
Create a new
MergedAnnotation instance of the specified
annotation type with attribute values supplied by a map. |
static <A extends Annotation> |
MergedAnnotation.of(ClassLoader classLoader,
Object source,
Class<A> annotationType,
Map<String,?> attributes)
Create a new
MergedAnnotation instance of the specified
annotation type with attribute values supplied by a map. |
MergedAnnotation<A> |
MergedAnnotationSelector.select(MergedAnnotation<A> existing,
MergedAnnotation<A> candidate)
Select the annotation that should be used.
|
MergedAnnotation<A> |
MergedAnnotation.withNonMergedAttributes()
Create a new view of the annotation that exposes non-merged attribute values.
|
Modifier and Type | Method and Description |
---|---|
static <A extends Annotation> |
MergedAnnotationPredicates.firstRunOf(Function<? super MergedAnnotation<A>,?> valueExtractor)
Create a new stateful, single use
Predicate that matches only
the first run of an extracted value. |
Stream<MergedAnnotation<Annotation>> |
MergedAnnotations.stream()
Stream all annotations and meta-annotations contained in this collection.
|
<A extends Annotation> |
MergedAnnotations.stream(Class<A> annotationType)
Stream all annotations and meta-annotations that match the specified
type.
|
<A extends Annotation> |
MergedAnnotations.stream(String annotationType)
Stream all annotations and meta-annotations that match the specified
type.
|
static <A extends Annotation> |
MergedAnnotationCollectors.toAnnotationArray()
Create a new
Collector that accumulates merged annotations to an
Annotation array containing synthesized versions. |
static <R extends Annotation,A extends R> |
MergedAnnotationCollectors.toAnnotationArray(IntFunction<R[]> generator)
Create a new
Collector that accumulates merged annotations to an
Annotation array containing synthesized versions. |
static <A extends Annotation> |
MergedAnnotationCollectors.toAnnotationSet()
Create a new
Collector that accumulates merged annotations to a
LinkedHashSet containing synthesized versions. |
static <A extends Annotation> |
MergedAnnotationCollectors.toMultiValueMap(Function<MultiValueMap<String,Object>,MultiValueMap<String,Object>> finisher,
MergedAnnotation.Adapt... adaptations)
Create a new
Collector that accumulates merged annotations to a
MultiValueMap with items added from each merged annotation
as a map. |
static <A extends Annotation> |
MergedAnnotationCollectors.toMultiValueMap(MergedAnnotation.Adapt... adaptations)
Create a new
Collector that accumulates merged annotations to a
MultiValueMap with items added from each merged annotation
as a map. |
static <A extends Annotation> |
MergedAnnotationPredicates.typeIn(Class<?>... types)
Create a new
Predicate that evaluates to true if the
merged annotation type is contained in
the specified array. |
static <A extends Annotation> |
MergedAnnotationPredicates.typeIn(Collection<?> types)
Create a new
Predicate that evaluates to true if the
merged annotation type is contained in
the specified collection. |
static <A extends Annotation> |
MergedAnnotationPredicates.typeIn(String... typeNames)
Create a new
Predicate that evaluates to true if the name of the
merged annotation type is contained in
the specified array. |
static <A extends Annotation,K> |
MergedAnnotationPredicates.unique(Function<? super MergedAnnotation<A>,K> keyExtractor)
Create a new stateful, single use
Predicate that matches
annotations that are unique based on the extracted key. |
Modifier and Type | Method and Description |
---|---|
default boolean |
MergedAnnotationSelector.isBestCandidate(MergedAnnotation<A> annotation)
Determine if the existing annotation is known to be the best
candidate and any subsequent selections may be skipped.
|
MergedAnnotation<A> |
MergedAnnotationSelector.select(MergedAnnotation<A> existing,
MergedAnnotation<A> candidate)
Select the annotation that should be used.
|
MergedAnnotation<A> |
MergedAnnotationSelector.select(MergedAnnotation<A> existing,
MergedAnnotation<A> candidate)
Select the annotation that should be used.
|
Modifier and Type | Method and Description |
---|---|
<T extends Map<String,Object>> |
MergedAnnotation.asMap(Function<MergedAnnotation<?>,T> factory,
MergedAnnotation.Adapt... adaptations)
Create a new
Map instance of the given type that contains all the annotation
attributes. |
static <A extends Annotation> |
MergedAnnotationPredicates.firstRunOf(Function<? super MergedAnnotation<A>,?> valueExtractor)
Create a new stateful, single use
Predicate that matches only
the first run of an extracted value. |
<A extends Annotation> |
MergedAnnotations.get(Class<A> annotationType,
Predicate<? super MergedAnnotation<A>> predicate)
|
<A extends Annotation> |
MergedAnnotations.get(Class<A> annotationType,
Predicate<? super MergedAnnotation<A>> predicate,
MergedAnnotationSelector<A> selector)
Get a matching annotation or meta-annotation of the specified type, or
missing() if none is present. |
<A extends Annotation> |
MergedAnnotations.get(String annotationType,
Predicate<? super MergedAnnotation<A>> predicate)
|
<A extends Annotation> |
MergedAnnotations.get(String annotationType,
Predicate<? super MergedAnnotation<A>> predicate,
MergedAnnotationSelector<A> selector)
Get a matching annotation or meta-annotation of the specified type, or
missing() if none is present. |
static MergedAnnotations |
MergedAnnotations.of(Collection<MergedAnnotation<?>> annotations)
Create a new
MergedAnnotations instance from the specified
collection of directly present annotations. |
Optional<A> |
MergedAnnotation.synthesize(Predicate<? super MergedAnnotation<A>> condition)
Optionally create a type-safe synthesized version of this annotation based
on a condition predicate.
|
static <A extends Annotation,K> |
MergedAnnotationPredicates.unique(Function<? super MergedAnnotation<A>,K> keyExtractor)
Create a new stateful, single use
Predicate that matches
annotations that are unique based on the extracted key. |