Annotation Type Metadata
Descriptor
.
One downside of using Qualifiers (or values in the Scope annotation) is that in order to get these values the underlying classes must be reified. In order to relieve the system from having to reify classes to get the data in the scope and qualifier annotations this annotation can be placed on the methods of an annotation to indicate that the values found in the annotation should be placed into the metadata of the descriptor. Since the metadata of a descriptor can be accessed without classloading the underlying class the descriptor is describing this data can then be accessed without needing to reify the class.
This qualifier will be honored whenever the system does automatic analysis of a class (for example, when analyzing a pre-reified class file or object). It will also be used by the automatic inhabitant generator when analyzing class files marked @Service. However, if the programmatic API is being used to build up a descriptor file this annotation is not taken into account, and it is hence the responsibility of the user of the programmatic API to fill in the metadata values itself.
This annotation can be placed on any method of an annotation marked with
Scope
or Qualifier
. The "toString" of the object returned
from that method will be placed in the metadata of the descriptor that is
created (unless the object returned is a Class, in which case the name of
the Class is used)
- See Also:
-
Required Element Summary
Required Elements
-
Element Details
-
value
String valueThis is the key that will be used in the metadata field of the descriptor. Values returned from the methods annotated with this annotation will have their toString called and the result will be added to the metadata key with this value (unless the return type is Class, in which case the name of the class will be used)- Returns:
- The key of the metadata field that will be added to
-