Annotation Type Capability
-
@Documented @Retention(CLASS) @Target({TYPE,PACKAGE}) @Repeatable(Capabilities.class) public @interface Capability
Define a capability for a bundle.For example:
@Capability(namespace=ExtenderNamespace.EXTENDER_NAMESPACE, name="osgi.component", version="1.3.0")
This annotation is not retained at runtime. It is for use by tools to generate bundle manifests or otherwise process the type or package.
This annotation can be used to annotate an annotation
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description String[]
attribute
A list of attribute or directive names and values.String
effective
The effective time of this capability.String
name
The name of this capability within the namespace.Class<?>[]
uses
A list of classes whose packages are inspected to calculate theuses
directive for this capability.String
version
The version of this capability.
-
-
-
Element Detail
-
namespace
String namespace
The namespace of this capability.
-
-
-
name
String name
The name of this capability within the namespace.If specified, adds an attribute with the name of the namespace and the value of the specified name to the capability clause.
- Default:
- ""
-
-
-
version
String version
The version of this capability.If specified, adds an attribute with the name and type of
version:Version
and the value of the specified version to the capability clause.The specified version must be a valid OSGi version string.
- Default:
- ""
-
-
-
uses
Class<?>[] uses
A list of classes whose packages are inspected to calculate theuses
directive for this capability.If not specified, the
uses
directive is omitted from the capability clause.- Default:
- {}
-
-
-
effective
String effective
The effective time of this capability.Specifies the time the capability is available. The OSGi framework resolver only considers capabilities without an effective directive or effective:=resolve. Capabilities with other values for the effective directive can be considered by an external agent.
If not specified, the
effective
directive is omitted from the capability clause.- Default:
- "resolve"
-
-
-
attribute
String[] attribute
A list of attribute or directive names and values.Each string should be specified in the form:
"name=value"
for attributes."name:type=value"
for typed attributes."name:=value"
for directives.
- Default:
- {}
-
-