@Internal public abstract class AbstractEnvironmentAnnotationMetadata extends Object implements AnnotationMetadata
AnnotationMetadata that is environment specific.| Modifier and Type | Field and Description |
|---|---|
protected Map<String,Annotation> |
annotationMap |
protected Map<String,Annotation> |
declaredAnnotationMap |
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBEREMPTY| Modifier | Constructor and Description |
|---|---|
protected |
AbstractEnvironmentAnnotationMetadata(DefaultAnnotationMetadata targetMetadata)
Construct a new environment aware annotation metadata.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addAnnotationValuesFromData(List results,
Map<CharSequence,Object> values)
Adds any annotation values found in the values map to the results.
|
protected void |
addValuesToResults(List<AnnotationValue> results,
AnnotationValue values)
Adds a values instance to the results.
|
Optional<Boolean> |
booleanValue(Class<? extends Annotation> annotation,
String member)
The value as an optional boolean for the given annotation and member.
|
Optional<Boolean> |
booleanValue(String annotation,
String member)
The value as an optional boolean for the given annotation and member.
|
Optional<Class> |
classValue(Class<? extends Annotation> annotation,
String member)
The value of the annotation as a Class.
|
Optional<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.
|
OptionalDouble |
doubleValue(Class<? extends Annotation> annotation,
String member)
The value as an
OptionalDouble for the given annotation and member. |
OptionalDouble |
doubleValue(String annotation,
String member)
The value as an
OptionalDouble for the given annotation and member. |
<E extends Enum> |
enumValue(Class<? extends Annotation> annotation,
String member,
Class<E> enumType)
The value of the annotation as a Class.
|
<E extends Enum> |
enumValue(String annotation,
String member,
Class<E> enumType)
The value of the annotation as a Class.
|
<T extends Annotation> |
findAnnotation(String annotation)
Find an
AnnotationValue for the given annotation name. |
<T extends Annotation> |
findDeclaredAnnotation(String annotation)
Get all of the values for the given annotation that are directly declared on the annotated element.
|
Set<String> |
getAnnotationNames()
All the annotation names this metadata declares.
|
List<String> |
getAnnotationNamesByStereotype(String stereotype)
Resolve all of the 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>> |
getAnnotationTypeByStereotype(Class<? extends Annotation> stereotype)
Find the first annotation name for the given stereotype.
|
Optional<Class<? extends Annotation>> |
getAnnotationTypeByStereotype(String stereotype)
Find the first annotation name for the given stereotype.
|
<T extends Annotation> |
getAnnotationValuesByType(Class<T> annotationType)
Gets all the annotation values by the given repeatable type.
|
Set<String> |
getDeclaredAnnotationNames()
All the declared annotation names this metadata declares.
|
List<String> |
getDeclaredAnnotationNamesByStereotype(String stereotype)
Resolve all of the annotations names for the given stereotype that are declared annotations.
|
<T extends Annotation> |
getDeclaredAnnotationValuesByType(Class<T> annotationType)
Gets only declared annotation values by the given repeatable type.
|
<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.
|
protected abstract Environment |
getEnvironment()
Resolves the
Environment for this metadata. |
<T> Optional<T> |
getValue(String annotation,
String member,
Argument<T> requiredType)
Get the value of the given annotation member.
|
<T> OptionalValues<T> |
getValues(String annotation,
Class<T> valueType)
Get all of the values for the given annotation and type of the underlying values.
|
boolean |
hasAnnotation(String annotation)
Checks whether this object has the given annotation on the object itself or inherited from a parent.
|
boolean |
hasDeclaredAnnotation(String annotation)
Checks whether this object has the given annotation directly declared on the object.
|
boolean |
hasDeclaredStereotype(String annotation)
Checks whether this object has the given annotation stereotype on the object itself and not inherited from a parent
|
boolean |
hasStereotype(String annotation)
Checks whether this object has the given annotation stereotype on the object itself or inherited from a parent
|
OptionalInt |
intValue(Class<? extends Annotation> annotation,
String member)
The value as an
OptionalInt for the given annotation and member. |
OptionalInt |
intValue(String annotation,
String member)
The value as an
OptionalInt for the given annotation and member. |
boolean |
isFalse(Class<? extends Annotation> annotation,
String member)
Returns whether the value of the given member is true.
|
boolean |
isFalse(String annotation,
String member)
Returns whether the value of the given member is true.
|
boolean |
isTrue(Class<? extends Annotation> annotation,
String member)
Returns whether the value of the given member is true.
|
boolean |
isTrue(String annotation,
String member)
Returns whether the value of the given member is true.
|
OptionalLong |
longValue(Class<? extends Annotation> annotation,
String member)
The value as an
OptionalLong for the given annotation and member. |
OptionalLong |
longValue(String annotation,
String member)
The value as an
OptionalLong for the given annotation and member. |
Optional<String> |
stringValue(Class<? extends Annotation> annotation,
String member)
The value as an optional string for the given annotation and member.
|
Optional<String> |
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.
|
<T extends Annotation> |
synthesize(Class<T> annotationClass)
Synthesizes a new annotation from the metadata for the given annotation type.
|
Annotation[] |
synthesizeAll()
Synthesizes a new annotations from the metadata.
|
<T extends Annotation> |
synthesizeAnnotationsByType(Class<T> annotationClass)
Synthesizes a new annotations from the metadata for the given type.
|
Annotation[] |
synthesizeDeclared()
Synthesizes a new annotations from the metadata.
|
<T extends Annotation> |
synthesizeDeclared(Class<T> annotationClass)
Synthesizes a new annotation from the metadata for the given annotation type.
|
<T extends Annotation> |
synthesizeDeclaredAnnotationsByType(Class<T> annotationClass)
Synthesizes a new annotations from the metadata for the given type.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitbooleanValue, booleanValue, classValue, classValue, classValues, classValues, doubleValue, enumValue, enumValue, findAnnotation, findDeclaredAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNamesByStereotype, getAnnotationTypesByStereotype, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDefaultValue, getDefaultValue, getDefaultValues, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, hasAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isPresent, isPresent, stringValue, stringValue, stringValuesgetAnnotation, getAnnotation, getDeclaredAnnotation, getDeclaredAnnotation, synthesize, synthesizeAll, synthesizeDeclared, synthesizeDeclaredprotected final Map<String,Annotation> annotationMap
protected final Map<String,Annotation> declaredAnnotationMap
protected AbstractEnvironmentAnnotationMetadata(DefaultAnnotationMetadata targetMetadata)
targetMetadata - The target annotation metadatapublic <T> Optional<T> getValue(@Nonnull String annotation, @Nonnull String member, @Nonnull Argument<T> requiredType)
AnnotationMetadatagetValue in interface AnnotationMetadataT - The valueannotation - The annotation classmember - The annotation memberrequiredType - The required typeOptional of the valuepublic <T> Class<T>[] classValues(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataclassValues in interface AnnotationMetadataT - The type of the classannotation - The annotationmember - The annotation memberOptional classpublic <T> Class<T>[] classValues(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataclassValues in interface AnnotationMetadataT - The type of the classannotation - The annotationmember - The annotation memberOptional classpublic boolean isTrue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataisTrue in interface AnnotationMetadataannotation - The annotation classmember - The annotation memberpublic boolean isFalse(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataisFalse in interface AnnotationMetadataannotation - The annotation classmember - The annotation member@Nonnull public Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(@Nonnull Class<? extends Annotation> stereotype)
AnnotationMetadatagetAnnotationTypeByStereotype in interface AnnotationMetadatastereotype - The stereotype@Nonnull public Optional<Class<? extends Annotation>> getAnnotationTypeByStereotype(@Nullable String stereotype)
AnnotationMetadatagetAnnotationTypeByStereotype in interface AnnotationMetadatastereotype - The stereotype@Nonnull public Optional<Class> classValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataclassValue in interface AnnotationMetadataannotation - The annotationmember - The annotation memberOptional class@Nonnull public Optional<Class> classValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataclassValue in interface AnnotationMetadataannotation - The annotationmember - The annotation memberOptional classpublic <E extends Enum> Optional<E> enumValue(@Nonnull String annotation, @Nonnull String member, Class<E> enumType)
AnnotationMetadataenumValue in interface AnnotationMetadataE - The enum typeannotation - The annotationmember - The annotation memberenumType - The enum typeOptional classpublic <E extends Enum> Optional<E> enumValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member, Class<E> enumType)
AnnotationMetadataenumValue in interface AnnotationMetadataE - The enum typeannotation - The annotationmember - The annotation memberenumType - The enum typeOptional classpublic Optional<Boolean> booleanValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadatabooleanValue in interface AnnotationMetadataannotation - The annotationmember - The memberpublic Optional<Boolean> booleanValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadatabooleanValue in interface AnnotationMetadataannotation - The annotationmember - The member@Nonnull public Optional<String> stringValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadatastringValue in interface AnnotationMetadataannotation - The annotationmember - The member@Nonnull public String[] stringValues(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadatastringValues in interface AnnotationMetadataannotation - The annotationmember - The member@Nonnull public Optional<String> stringValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadatastringValue in interface AnnotationMetadataannotation - The annotationmember - The memberpublic OptionalLong longValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataOptionalLong for the given annotation and member.longValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalLong valuepublic OptionalLong longValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataOptionalLong for the given annotation and member.longValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalLong value@Nonnull public OptionalInt intValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataOptionalInt for the given annotation and member.intValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalInt value@Nonnull public OptionalInt intValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataOptionalInt for the given annotation and member.intValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalInt value@Nonnull public OptionalDouble doubleValue(@Nonnull String annotation, @Nonnull String member)
AnnotationMetadataOptionalDouble for the given annotation and member.doubleValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalDouble value@Nonnull public OptionalDouble doubleValue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataOptionalDouble for the given annotation and member.doubleValue in interface AnnotationMetadataannotation - The annotationmember - The memberOptionalDouble valuepublic boolean isTrue(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataisTrue in interface AnnotationMetadataannotation - The annotation classmember - The annotation memberpublic boolean isFalse(@Nonnull Class<? extends Annotation> annotation, @Nonnull String member)
AnnotationMetadataisFalse in interface AnnotationMetadataannotation - The annotation classmember - The annotation member@Nonnull public Optional<Class<? extends Annotation>> getAnnotationType(@Nonnull String name)
AnnotationMetadatagetAnnotationType in interface AnnotationMetadataname - The type name@Nonnull public <T extends Annotation> List<AnnotationValue<T>> getAnnotationValuesByType(@Nonnull Class<T> annotationType)
AnnotationMetadatagetAnnotationValuesByType in interface AnnotationMetadataT - The annotation typeannotationType - The annotation type@Nonnull public <T extends Annotation> List<AnnotationValue<T>> getDeclaredAnnotationValuesByType(@Nonnull Class<T> annotationType)
AnnotationMetadatagetDeclaredAnnotationValuesByType in interface AnnotationMetadataT - The annotation typeannotationType - The annotation type@Nonnull public <T extends Annotation> T[] synthesizeAnnotationsByType(@Nonnull Class<T> annotationClass)
AnnotationSourcesynthesizeAnnotationsByType in interface AnnotationSourceT - The annotation generic typeannotationClass - The annotation type@Nonnull public <T extends Annotation> T[] synthesizeDeclaredAnnotationsByType(@Nonnull Class<T> annotationClass)
AnnotationSourcesynthesizeDeclaredAnnotationsByType in interface AnnotationSourceT - The annotation generic typeannotationClass - The annotation typepublic boolean hasDeclaredAnnotation(@Nullable String annotation)
AnnotationMetadatahasDeclaredAnnotation in interface AnnotationMetadataannotation - The annotationpublic boolean hasAnnotation(@Nullable String annotation)
AnnotationMetadatahasAnnotation in interface AnnotationMetadataannotation - The annotationpublic boolean hasStereotype(@Nullable String annotation)
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
hasStereotype in interface AnnotationMetadataannotation - The annotationpublic boolean hasDeclaredStereotype(@Nullable String annotation)
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
hasDeclaredStereotype in interface AnnotationMetadataannotation - The annotation@Nonnull public List<String> getAnnotationNamesByStereotype(String stereotype)
AnnotationMetadatagetAnnotationNamesByStereotype in interface AnnotationMetadatastereotype - The annotation names@Nonnull public Set<String> getAnnotationNames()
AnnotationMetadatagetAnnotationNames in interface AnnotationMetadata@Nonnull public Set<String> getDeclaredAnnotationNames()
AnnotationMetadatagetDeclaredAnnotationNames in interface AnnotationMetadata@Nonnull public List<String> getDeclaredAnnotationNamesByStereotype(String stereotype)
AnnotationMetadatagetDeclaredAnnotationNamesByStereotype in interface AnnotationMetadatastereotype - The stereotype@Nonnull public <T extends Annotation> Optional<AnnotationValue<T>> findAnnotation(@Nonnull String annotation)
AnnotationSourceAnnotationValue for the given annotation name.findAnnotation in interface AnnotationSourceT - The annotation typeannotation - The annotation nameAnnotationValue instance@Nonnull public <T extends Annotation> Optional<AnnotationValue<T>> findDeclaredAnnotation(@Nonnull String annotation)
AnnotationSourcefindDeclaredAnnotation in interface AnnotationSourceT - The annotation typeannotation - The annotation nameAnnotationValue instance@Nonnull public <T> OptionalValues<T> getValues(@Nonnull String annotation, @Nonnull Class<T> valueType)
AnnotationMetadatagetValues in interface AnnotationMetadataT - Generic typeannotation - The annotation namevalueType - valueTypeOptionalValues@Nonnull public <T> Optional<T> getDefaultValue(@Nonnull String annotation, @Nonnull String member, @Nonnull Class<T> requiredType)
AnnotationMetadatagetDefaultValue in interface AnnotationMetadataT - The required generic typeannotation - The annotationmember - The memberrequiredType - The required type@Nonnull public <T> Optional<T> getDefaultValue(@Nonnull String annotation, @Nonnull String member, @Nonnull Argument<T> requiredType)
AnnotationMetadatagetDefaultValue in interface AnnotationMetadataT - The required generic typeannotation - The annotationmember - The memberrequiredType - The required type@Nullable protected abstract Environment getEnvironment()
Environment for this metadata.protected void addValuesToResults(List<AnnotationValue> results, AnnotationValue values)
results - The resultsvalues - The values@Nullable public <T extends Annotation> T synthesize(@Nonnull Class<T> annotationClass)
AnnotationSourcesynthesize in interface AnnotationSourceT - The annotation generic typeannotationClass - The annotation class@Nullable public <T extends Annotation> T synthesizeDeclared(@Nonnull Class<T> annotationClass)
AnnotationSourceThis method ignores inherited annotations. (Returns null if no annotations are directly present on this element.)
synthesizeDeclared in interface AnnotationSourceT - The annotation generic typeannotationClass - The annotation class@Nonnull public Annotation[] synthesizeAll()
AnnotationSourcesynthesizeAll in interface AnnotationSource@Nonnull public Annotation[] synthesizeDeclared()
AnnotationSourcesynthesizeDeclared in interface AnnotationSourceprotected final void addAnnotationValuesFromData(List results, Map<CharSequence,Object> values)
results - The resultsvalues - The values