
aQute.bnd.help.SyntaxAnnotation Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of biz.aQute.bndlib Show documentation
Show all versions of biz.aQute.bndlib Show documentation
bndlib: A Swiss Army Knife for OSGi
The newest version!
package aQute.bnd.help;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* The purpose of this class is to annotate methods in interfaces. Through a
* proxy, these interfaces can then be used to access the instructions and
* clauses in a Processor.
*
* There are the following types of instructions:
*
* - Typed Parameters - Return is a Map
, where T is an annotated
* attrs interface. This cannot be optional, it will always return a map,
* potentially empty.
* - Typed Attrs – Return type is a T, where T is not an iterable but yet an
* interface annotated with this annotation. This cannot be an Optional.
*
- Attrs – Return type is Attrs. This cannot be an Optional
*
- Parameters – Return type is Parameters. This cannot be an optional.
*
- Lists – Return type is assignable to an iterable. This cannot be an
* Optional.
*
- Basic value – Anything else, is handled by the converter. This can be an
* Optional.
*
*/
@Retention(RetentionPolicy.RUNTIME)
@Target({
ElementType.METHOD, ElementType.FIELD
})
public @interface SyntaxAnnotation {
/**
* The property name of the instruction in an Attrs.
*/
String name() default "";
/**
* An example of this property
*/
String example() default "";
/**
* A lead text about this property
*/
String lead() default "";
/**
* A pattern for the key of this parameter
*/
String pattern() default "";
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy