Class AbstractEnvironmentAnnotationMetadata
- All Implemented Interfaces:
AnnotationMetadata, AnnotationSource
AnnotationMetadata that is environment specific.- Since:
- 1.0
- Author:
- Graeme Rocher
-
Field Summary
Fields inherited from interface AnnotationMetadata
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBERFields inherited from interface AnnotationSource
EMPTY -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractEnvironmentAnnotationMetadata(AnnotationMetadata targetMetadata) Construct a new environment aware annotation metadata. -
Method Summary
Modifier and TypeMethodDescriptionbooleanValue(Class<? extends Annotation> annotation, String member) The value as an optional boolean for the given annotation and member.booleanValue(String annotation, String member) The value as an optional boolean for the given annotation and member.classValue(Class<? extends Annotation> annotation, String member) The value of the annotation as a Class.classValue(String annotation, String member) The value of the annotation as a Class.<T> Class<T>[]classValues(Class<? extends Annotation> annotation, String member) The value of the annotation as a Class.<T> Class<T>[]classValues(String annotation, String member) The value of the annotation as a Class.Makes a copy of the annotation or returns this.doubleValue(Class<? extends Annotation> annotation, String member) The value as anOptionalDoublefor the given annotation and member.doubleValue(String annotation, String member) The value as anOptionalDoublefor the given annotation and member.enumValue(Class<? extends Annotation> annotation, String member, Class<E> enumType) The value of the annotation as a Class.The value of the annotation as a Class.<E extends Enum<E>>
E[]enumValues(String annotation, String member, Class<E> enumType) The enum values for the given annotation.<T extends Annotation>
Optional<AnnotationValue<T>> findAnnotation(String annotation) Find anAnnotationValuefor the given annotation name.<T extends Annotation>
Optional<AnnotationValue<T>> findDeclaredAnnotation(String annotation) Get all values for the given annotation that are directly declared on the annotated element.findRepeatableAnnotation(Class<? extends Annotation> annotation) Find repeatable annotation container.findRepeatableAnnotation(String annotation) Find repeatable annotation container.All the annotation names this metadata declares.getAnnotationNamesByStereotype(@Nullable String stereotype) Resolve all annotation names that feature the given stereotype.Optional<Class<? extends Annotation>> getAnnotationType(String name) Gets the type for a given annotation if it is present on the classpath.Optional<Class<? extends Annotation>> getAnnotationType(String name, ClassLoader classLoader) Gets the type for a given annotation if it is present on the classpath.Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(@Nullable String stereotype) Find the first annotation name for the given stereotype.Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(Class<? extends Annotation> stereotype) Find the first annotation name for the given stereotype.<T extends Annotation>
List<AnnotationValue<T>> getAnnotationValuesByName(String annotationType) Gets all the annotation values by the given type name.<T extends Annotation>
List<AnnotationValue<T>> getAnnotationValuesByStereotype(@Nullable String stereotype) Resolve all annotation values that feature the given stereotype.<T extends Annotation>
List<AnnotationValue<T>> getAnnotationValuesByType(Class<T> annotationType) Gets all the annotation values by the given repeatable type.All the declared annotation names this metadata declares.getDeclaredAnnotationNamesByStereotype(@Nullable String stereotype) Resolve all annotations names for the given stereotype that are declared annotations.<T extends Annotation>
List<AnnotationValue<T>> getDeclaredAnnotationValuesByName(String annotationType) Gets only declared annotation values by the given type name.<T extends Annotation>
List<AnnotationValue<T>> getDeclaredAnnotationValuesByType(Class<T> annotationType) Gets only declared annotation values by the given repeatable type.Narrows the target metadata to its declared metadata, keeping the placeholder resolution of this metadata.Returns the names of the annotations which are declared stereotypes.<T> Optional<T> getDefaultValue(String annotation, String member, Argument<T> requiredType) Return the default value for the given annotation member.<T> Optional<T> getDefaultValue(String annotation, String member, Class<T> requiredType) Return the default value for the given annotation member.getDefaultValues(String annotation) Return the default values for the given annotation name.protected abstract @Nullable EnvironmentResolves theEnvironmentfor this metadata.Returns the names of the annotations which are stereotypes.Unwraps possible a possible delegate or a provider, returns this otherwise.<T> Optional<T> Get the value of the given annotation member.<T> OptionalValues<T> Get all values for the given annotation and type of the underlying values.booleanhasAnnotation(@Nullable String annotation) Checks whether this object has the given annotation on the object itself or inherited from a parent.booleanhasDeclaredAnnotation(@Nullable String annotation) Checks whether this object has the given annotation directly declared on the object.booleanhasDeclaredStereotype(@Nullable String annotation) Checks whether this object has the given annotation stereotype on the object itself and not inherited from a parentbooleanDoes the metadata contain any evaluated expressions like#{ T(java.lang.Math).random() }.booleanDoes the metadata contain any property expressions like${foo.bar}.booleanhasStereotype(@Nullable String annotation) Checks whether this object has the given annotation stereotype on the object itself or inherited from a parentintValue(Class<? extends Annotation> annotation, String member) The value as anOptionalIntfor the given annotation and member.The value as anOptionalIntfor the given annotation and member.booleanisEmpty()Is the annotation metadata empty.booleanisFalse(Class<? extends Annotation> annotation, String member) Returns whether the value of the given member is true.booleanReturns whether the value of the given member is true.booleanisRepeatableAnnotation(Class<? extends Annotation> annotation) Is repeatable annotation?booleanisRepeatableAnnotation(String annotation) Is repeatable annotation?booleanisTrue(Class<? extends Annotation> annotation, String member) Returns whether the value of the given member is true.booleanReturns whether the value of the given member is true.longValue(Class<? extends Annotation> annotation, String member) The value as anOptionalLongfor the given annotation and member.The value as anOptionalLongfor the given annotation and member.stringValue(Class<? extends Annotation> annotation, String member) The value as an optional string for the given annotation and member.stringValue(String annotation, String member) The value as an optional string for the given annotation and member.String[]stringValues(Class<? extends Annotation> annotation, String member) The values as string array for the given annotation and member.String[]stringValues(String annotation, String member) The values as string array for the given annotation and member.<T extends Annotation>
@Nullable Tsynthesize(Class<T> annotationClass) Synthesizes a new annotation from the metadata for the given annotation type.<T extends Annotation>
@Nullable Tsynthesize(Class<T> annotationClass, String sourceAnnotation) Synthesizes a new annotation for the given annotation type using the member values of the given source annotation.Synthesizes a new annotations from the metadata.<T extends Annotation>
T[]synthesizeAnnotationsByType(Class<T> annotationClass) Synthesizes a new annotations from the metadata for the given type.Synthesizes the annotations declared on the element of thedeclared metadata.<T extends Annotation>
@Nullable TsynthesizeDeclared(Class<T> annotationClass) Synthesizes a new annotation from the metadata for the given annotation type.<T extends Annotation>
@Nullable TsynthesizeDeclared(Class<T> annotationClass, String sourceAnnotation) Synthesizes a new annotation declared for the given annotation type using the member values of the given source annotation.<T extends Annotation>
T[]synthesizeDeclaredAnnotationsByType(Class<T> annotationClass) Synthesizes a new annotations from the metadata for the given type.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface AnnotationMetadata
booleanValue, booleanValue, classValue, classValue, classValues, classValues, doubleValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValuesSet, enumValuesSet, findAnnotation, findDeclaredAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNamesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDefaultValue, getDefaultValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotypeNonRepeating, intValue, isAnnotationPresent, isAnnotationPresent, isDeclaredAnnotationPresent, isDeclaredAnnotationPresent, isPresent, isPresent, stringValue, stringValue, stringValues, stringValuesMethods inherited from interface AnnotationSource
getAnnotation, getAnnotation, getDeclaredAnnotation, getDeclaredAnnotation
-
Constructor Details
-
AbstractEnvironmentAnnotationMetadata
Construct a new environment aware annotation metadata.- Parameters:
targetMetadata- The target annotation metadata
-
-
Method Details
-
getAnnotationMetadata
- Returns:
- The backing annotation metadata
-
getDeclaredMetadata
Narrows the target metadata to its declared metadata, keeping the placeholder resolution of this metadata.- Specified by:
getDeclaredMetadatain interfaceAnnotationMetadata- Returns:
- The declared metadata
-
isEmpty
public boolean isEmpty()Description copied from interface:AnnotationMetadataIs the annotation metadata empty.- Specified by:
isEmptyin interfaceAnnotationMetadata- Returns:
- True if it is
-
hasPropertyExpressions
public boolean hasPropertyExpressions()Description copied from interface:AnnotationMetadataDoes the metadata contain any property expressions like${foo.bar}. Note this by default returnstrueas previous versions of Micronaut must assume metadata is present. The compilation time this is computed in order to decide whether to instrument annotation metadata with environment specific logic.- Specified by:
hasPropertyExpressionsin interfaceAnnotationMetadata- Returns:
- True if property expressions are present
-
synthesize
Description copied from interface:AnnotationSourceSynthesizes a new annotation from the metadata for the given annotation type. This method works by creating a runtime proxy of the annotation interface and should be avoided in favour of direct use of the annotation metadata and only used for unique cases that require integrating third party libraries.- Specified by:
synthesizein interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation class- Returns:
- The annotation or null if it doesn't exist
-
synthesize
public <T extends Annotation> @Nullable T synthesize(Class<T> annotationClass, String sourceAnnotation) Description copied from interface:AnnotationSourceSynthesizes a new annotation for the given annotation type using the member values of the given source annotation.This method allows supporting synthesizing annotations that have been renamed, for example a
jakarta.inject.Namedannotation an be synthesized from the metadata of the ajakarta.inject.Namedannotation.- Specified by:
synthesizein interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation classsourceAnnotation- The source annotation that provides the member values- Returns:
- The annotation or null if it doesn't exist
-
synthesizeDeclared
Description copied from interface:AnnotationSourceSynthesizes a new annotation from the metadata for the given annotation type. This method works by creating a runtime proxy of the annotation interface and should be avoided in favour of direct use of the annotation metadata and only used for unique cases that require integrating third party libraries.This method ignores inherited annotations. (Returns null if no annotations are directly present on this element.)
- Specified by:
synthesizeDeclaredin interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation class- Returns:
- The annotation or null if it doesn't exist
-
synthesizeDeclared
public <T extends Annotation> @Nullable T synthesizeDeclared(Class<T> annotationClass, String sourceAnnotation) Description copied from interface:AnnotationSourceSynthesizes a new annotation declared for the given annotation type using the member values of the given source annotation.This method allows supporting synthesizing annotations that have been renamed, for example a
jakarta.inject.Namedannotation an be synthesized from the metadata of the ajakarta.inject.Namedannotation.- Specified by:
synthesizeDeclaredin interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation classsourceAnnotation- The source annotation that provides the member values- Returns:
- The annotation or null if it doesn't exist
-
synthesizeAll
Description copied from interface:AnnotationSourceSynthesizes a new annotations from the metadata. This method works by creating a runtime proxy of the annotation interface and should be avoided in favour of direct use of the annotation metadata and only used for unique cases that require integrating third party libraries.- Specified by:
synthesizeAllin interfaceAnnotationSource- Returns:
- All the annotations
-
synthesizeDeclared
Synthesizes the annotations declared on the element of thedeclared metadata.- Specified by:
synthesizeDeclaredin interfaceAnnotationSource- Returns:
- The declared annotations
-
hasEvaluatedExpressions
public boolean hasEvaluatedExpressions()Description copied from interface:AnnotationMetadataDoes the metadata contain any evaluated expressions like#{ T(java.lang.Math).random() }.- Specified by:
hasEvaluatedExpressionsin interfaceAnnotationMetadata- Returns:
- True if evaluated expressions are present
-
getValue
Description copied from interface:AnnotationMetadataGet the value of the given annotation member.- Specified by:
getValuein interfaceAnnotationMetadata- Type Parameters:
T- The value- Parameters:
annotation- The annotation classmember- The annotation memberrequiredType- The required type- Returns:
- An
Optionalof the value
-
classValues
Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
classValuesin interfaceAnnotationMetadata- Type Parameters:
T- The type of the class- Parameters:
annotation- The annotationmember- The annotation member- Returns:
- An
Optionalclass
-
classValues
Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
classValuesin interfaceAnnotationMetadata- Type Parameters:
T- The type of the class- Parameters:
annotation- The annotationmember- The annotation member- Returns:
- An
Optionalclass
-
isTrue
Description copied from interface:AnnotationMetadataReturns whether the value of the given member is true.- Specified by:
isTruein interfaceAnnotationMetadata- Parameters:
annotation- The annotation classmember- The annotation member- Returns:
- True if the value is true
-
isFalse
Description copied from interface:AnnotationMetadataReturns whether the value of the given member is true.- Specified by:
isFalsein interfaceAnnotationMetadata- Parameters:
annotation- The annotation classmember- The annotation member- Returns:
- True if the value is true
-
getAnnotationTypeByStereotype
public Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(Class<? extends Annotation> stereotype) Description copied from interface:AnnotationMetadataFind the first annotation name for the given stereotype.- Specified by:
getAnnotationTypeByStereotypein interfaceAnnotationMetadata- Parameters:
stereotype- The stereotype- Returns:
- The annotation name
-
getAnnotationTypeByStereotype
public Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(@Nullable String stereotype) Description copied from interface:AnnotationMetadataFind the first annotation name for the given stereotype.- Specified by:
getAnnotationTypeByStereotypein interfaceAnnotationMetadata- Parameters:
stereotype- The stereotype- Returns:
- The annotation name
-
classValue
Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
classValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The annotation member- Returns:
- An
Optionalclass
-
classValue
Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
classValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The annotation member- Returns:
- An
Optionalclass
-
enumValue
public <E extends Enum<E>> Optional<E> enumValue(String annotation, String member, Class<E> enumType) Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
enumValuein interfaceAnnotationMetadata- Type Parameters:
E- The enum type- Parameters:
annotation- The annotationmember- The annotation memberenumType- The enum type- Returns:
- An
Optionalclass
-
enumValue
public <E extends Enum<E>> Optional<E> enumValue(Class<? extends Annotation> annotation, String member, Class<E> enumType) Description copied from interface:AnnotationMetadataThe value of the annotation as a Class.- Specified by:
enumValuein interfaceAnnotationMetadata- Type Parameters:
E- The enum type- Parameters:
annotation- The annotationmember- The annotation memberenumType- The enum type- Returns:
- An
Optionalclass
-
enumValues
Description copied from interface:AnnotationMetadataThe enum values for the given annotation.- Specified by:
enumValuesin interfaceAnnotationMetadata- Type Parameters:
E- The enum type- Parameters:
annotation- The annotationmember- The annotation memberenumType- The enum type- Returns:
- An array of enum values
-
booleanValue
Description copied from interface:AnnotationMetadataThe value as an optional boolean for the given annotation and member.- Specified by:
booleanValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string value if it is present
-
booleanValue
Description copied from interface:AnnotationMetadataThe value as an optional boolean for the given annotation and member.- Specified by:
booleanValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string value if it is present
-
stringValue
Description copied from interface:AnnotationMetadataThe value as an optional string for the given annotation and member.- Specified by:
stringValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string value if it is present
-
stringValues
Description copied from interface:AnnotationMetadataThe values as string array for the given annotation and member.- Specified by:
stringValuesin interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string values if it is present
-
stringValues
Description copied from interface:AnnotationMetadataThe values as string array for the given annotation and member.- Specified by:
stringValuesin interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string values if it is present
-
stringValue
Description copied from interface:AnnotationMetadataThe value as an optional string for the given annotation and member.- Specified by:
stringValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- The string value if it is present
-
longValue
Description copied from interface:AnnotationMetadataThe value as anOptionalLongfor the given annotation and member.- Specified by:
longValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalLongvalue
-
longValue
Description copied from interface:AnnotationMetadataThe value as anOptionalLongfor the given annotation and member.- Specified by:
longValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalLongvalue
-
intValue
Description copied from interface:AnnotationMetadataThe value as anOptionalIntfor the given annotation and member.- Specified by:
intValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalIntvalue
-
intValue
Description copied from interface:AnnotationMetadataThe value as anOptionalIntfor the given annotation and member.- Specified by:
intValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalIntvalue
-
doubleValue
Description copied from interface:AnnotationMetadataThe value as anOptionalDoublefor the given annotation and member.- Specified by:
doubleValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalDoublevalue
-
doubleValue
Description copied from interface:AnnotationMetadataThe value as anOptionalDoublefor the given annotation and member.- Specified by:
doubleValuein interfaceAnnotationMetadata- Parameters:
annotation- The annotationmember- The member- Returns:
- THe
OptionalDoublevalue
-
isTrue
Description copied from interface:AnnotationMetadataReturns whether the value of the given member is true.- Specified by:
isTruein interfaceAnnotationMetadata- Parameters:
annotation- The annotation classmember- The annotation member- Returns:
- True if the value is true
-
isFalse
Description copied from interface:AnnotationMetadataReturns whether the value of the given member is true.- Specified by:
isFalsein interfaceAnnotationMetadata- Parameters:
annotation- The annotation classmember- The annotation member- Returns:
- True if the value is true
-
getAnnotationType
Description copied from interface:AnnotationMetadataGets the type for a given annotation if it is present on the classpath. Subclasses can potentially override to provide optimized loading.- Specified by:
getAnnotationTypein interfaceAnnotationMetadata- Parameters:
name- The type name- Returns:
- The type if present
-
getAnnotationType
public Optional<Class<? extends Annotation>> getAnnotationType(String name, ClassLoader classLoader) Description copied from interface:AnnotationMetadataGets the type for a given annotation if it is present on the classpath. Subclasses can potentially override to provide optimized loading.- Specified by:
getAnnotationTypein interfaceAnnotationMetadata- Parameters:
name- The type nameclassLoader- The ClassLoader to load the type- Returns:
- The type if present
-
getAnnotationValuesByType
public <T extends Annotation> List<AnnotationValue<T>> getAnnotationValuesByType(Class<T> annotationType) Description copied from interface:AnnotationMetadataGets all the annotation values by the given repeatable type.- Specified by:
getAnnotationValuesByTypein interfaceAnnotationMetadata- Type Parameters:
T- The annotation type- Parameters:
annotationType- The annotation type- Returns:
- A list of values
-
getAnnotationValuesByName
public <T extends Annotation> List<AnnotationValue<T>> getAnnotationValuesByName(String annotationType) Description copied from interface:AnnotationMetadataGets all the annotation values by the given type name. A repeatable annotation lists each of its occurrences, a non-repeatable one is a single-element list and an absent one an empty list.- Specified by:
getAnnotationValuesByNamein interfaceAnnotationMetadata- Type Parameters:
T- The annotation type- Parameters:
annotationType- The annotation type- Returns:
- A list of values
-
getAnnotationValuesByStereotype
public <T extends Annotation> List<AnnotationValue<T>> getAnnotationValuesByStereotype(@Nullable String stereotype) Description copied from interface:AnnotationMetadataResolve all annotation values that feature the given stereotype.- Specified by:
getAnnotationValuesByStereotypein interfaceAnnotationMetadata- Type Parameters:
T- The annotation type- Parameters:
stereotype- The annotation names- Returns:
- A set of annotation names
-
getDeclaredAnnotationValuesByType
public <T extends Annotation> List<AnnotationValue<T>> getDeclaredAnnotationValuesByType(Class<T> annotationType) Description copied from interface:AnnotationMetadataGets only declared annotation values by the given repeatable type.- Specified by:
getDeclaredAnnotationValuesByTypein interfaceAnnotationMetadata- Type Parameters:
T- The annotation type- Parameters:
annotationType- The annotation type- Returns:
- A list of values
-
getDeclaredAnnotationValuesByName
public <T extends Annotation> List<AnnotationValue<T>> getDeclaredAnnotationValuesByName(String annotationType) Description copied from interface:AnnotationMetadataGets only declared annotation values by the given type name. A repeatable annotation lists each of its declared occurrences, a non-repeatable declared annotation is a single-element list and an absent one an empty list, mirroringAnnotationMetadata.getAnnotationValuesByName(String).- Specified by:
getDeclaredAnnotationValuesByNamein interfaceAnnotationMetadata- Type Parameters:
T- The annotation type- Parameters:
annotationType- The annotation type- Returns:
- A list of values
-
synthesizeAnnotationsByType
Description copied from interface:AnnotationSourceSynthesizes a new annotations from the metadata for the given type. This method works by creating a runtime proxy of the annotation interface and should be avoided in favour of direct use of the annotation metadata and only used for unique cases that require integrating third party libraries.- Specified by:
synthesizeAnnotationsByTypein interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation type- Returns:
- All annotations by the given type
-
synthesizeDeclaredAnnotationsByType
Description copied from interface:AnnotationSourceSynthesizes a new annotations from the metadata for the given type. This method works by creating a runtime proxy of the annotation interface and should be avoided in favour of direct use of the annotation metadata and only used for unique cases that require integrating third party libraries.- Specified by:
synthesizeDeclaredAnnotationsByTypein interfaceAnnotationSource- Type Parameters:
T- The annotation generic type- Parameters:
annotationClass- The annotation type- Returns:
- Declared annotations by the given type
-
hasDeclaredAnnotation
Description copied from interface:AnnotationMetadataChecks whether this object has the given annotation directly declared on the object.- Specified by:
hasDeclaredAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- True if the annotation is present
-
hasAnnotation
Description copied from interface:AnnotationMetadataChecks whether this object has the given annotation on the object itself or inherited from a parent.- Specified by:
hasAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- True if the annotation is present
-
hasStereotype
Description copied from interface:AnnotationMetadataChecks whether this object has the given annotation stereotype on the object itself or inherited from a parent
.An annotation stereotype is a meta annotation potentially applied to another annotation
- Specified by:
hasStereotypein interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- True if the annotation is present
-
hasDeclaredStereotype
Description copied from interface:AnnotationMetadataChecks whether this object has the given annotation stereotype on the object itself and not inherited from a parent
.An annotation stereotype is a meta annotation potentially applied to another annotation
- Specified by:
hasDeclaredStereotypein interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- True if the annotation is present
-
getAnnotationNamesByStereotype
Description copied from interface:AnnotationMetadataResolve all annotation names that feature the given stereotype.- Specified by:
getAnnotationNamesByStereotypein interfaceAnnotationMetadata- Parameters:
stereotype- The annotation names- Returns:
- A set of annotation names
-
getAnnotationNames
Description copied from interface:AnnotationMetadataAll the annotation names this metadata declares.- Specified by:
getAnnotationNamesin interfaceAnnotationMetadata- Returns:
- All the annotation names this metadata declares
-
getDeclaredAnnotationNames
Description copied from interface:AnnotationMetadataAll the declared annotation names this metadata declares.- Specified by:
getDeclaredAnnotationNamesin interfaceAnnotationMetadata- Returns:
- All the declared annotation names this metadata declares
-
getStereotypeAnnotationNames
Description copied from interface:AnnotationMetadataReturns the names of the annotations which are stereotypes.A stereotype is a meta-annotation (an annotation declared on another annotation).
- Specified by:
getStereotypeAnnotationNamesin interfaceAnnotationMetadata- Returns:
- The names of the stereotype annotations
- See Also:
-
getDeclaredStereotypeAnnotationNames
Description copied from interface:AnnotationMetadataReturns the names of the annotations which are declared stereotypes.A stereotype is a meta-annotation (an annotation declared on another annotation).
A stereotype is considered declared when it it is a meta-annotation that is present on an annotation directly declared on the element and not inherited from a super class.
- Specified by:
getDeclaredStereotypeAnnotationNamesin interfaceAnnotationMetadata- Returns:
- The names of the stereotype annotations
- See Also:
-
isRepeatableAnnotation
Description copied from interface:AnnotationMetadataIs repeatable annotation?- Specified by:
isRepeatableAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- true if repeatable
-
isRepeatableAnnotation
Description copied from interface:AnnotationMetadataIs repeatable annotation?- Specified by:
isRepeatableAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- true if repeatable
-
findRepeatableAnnotation
Description copied from interface:AnnotationMetadataFind repeatable annotation container.- Specified by:
findRepeatableAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- optional repeatable annotation container
-
findRepeatableAnnotation
Description copied from interface:AnnotationMetadataFind repeatable annotation container.- Specified by:
findRepeatableAnnotationin interfaceAnnotationMetadata- Parameters:
annotation- The annotation- Returns:
- optional repeatable annotation container
-
getDeclaredAnnotationNamesByStereotype
Description copied from interface:AnnotationMetadataResolve all annotations names for the given stereotype that are declared annotations.- Specified by:
getDeclaredAnnotationNamesByStereotypein interfaceAnnotationMetadata- Parameters:
stereotype- The stereotype- Returns:
- The declared annotations
-
findAnnotation
Description copied from interface:AnnotationSourceFind anAnnotationValuefor the given annotation name.- Specified by:
findAnnotationin interfaceAnnotationSource- Type Parameters:
T- The annotation type- Parameters:
annotation- The annotation name- Returns:
- A
AnnotationValueinstance
-
findDeclaredAnnotation
public <T extends Annotation> Optional<AnnotationValue<T>> findDeclaredAnnotation(String annotation) Description copied from interface:AnnotationSourceGet all values for the given annotation that are directly declared on the annotated element.- Specified by:
findDeclaredAnnotationin interfaceAnnotationSource- Type Parameters:
T- The annotation type- Parameters:
annotation- The annotation name- Returns:
- A
AnnotationValueinstance
-
getValues
Description copied from interface:AnnotationMetadataGet all values for the given annotation and type of the underlying values.- Specified by:
getValuesin interfaceAnnotationMetadata- Type Parameters:
T- Generic type- Parameters:
annotation- The annotation namevalueType- valueType- Returns:
- The
OptionalValues
-
getDefaultValues
Description copied from interface:AnnotationMetadataReturn the default values for the given annotation name.- Specified by:
getDefaultValuesin interfaceAnnotationMetadata- Parameters:
annotation- The annotation name- Returns:
- The default values
-
getDefaultValue
Description copied from interface:AnnotationMetadataReturn the default value for the given annotation member.- Specified by:
getDefaultValuein interfaceAnnotationMetadata- Type Parameters:
T- The required generic type- Parameters:
annotation- The annotationmember- The memberrequiredType- The required type- Returns:
- An optional value
-
getDefaultValue
Description copied from interface:AnnotationMetadataReturn the default value for the given annotation member.- Specified by:
getDefaultValuein interfaceAnnotationMetadata- Type Parameters:
T- The required generic type- Parameters:
annotation- The annotationmember- The memberrequiredType- The required type- Returns:
- An optional value
-
copyAnnotationMetadata
Description copied from interface:AnnotationMetadataMakes a copy of the annotation or returns this.- Specified by:
copyAnnotationMetadatain interfaceAnnotationMetadata- Returns:
- the copy
-
getTargetAnnotationMetadata
Description copied from interface:AnnotationMetadataUnwraps possible a possible delegate or a provider, returns this otherwise.- Specified by:
getTargetAnnotationMetadatain interfaceAnnotationMetadata- Specified by:
getTargetAnnotationMetadatain interfaceAnnotationSource- Returns:
- unwrapped
- See Also:
-
getEnvironment
Resolves theEnvironmentfor this metadata.- Returns:
- The metadata
-