blob: 1fb39d63026d11d46a53ff9537ec44912df119b8 [file] [log] [blame]
Stuart McCulloch26e7a5a2011-10-17 10:31:43 +00001package aQute.bnd.annotation.component;
2
3import java.lang.annotation.*;
4
5@Retention(RetentionPolicy.CLASS) @Target(ElementType.TYPE) public @interface Component {
6 String RNAME = "LaQute/bnd/annotation/component/Component;";
7 String PROVIDE = "provide";
8 String NAME = "name";
9 String FACTORY = "factory";
10 String SERVICEFACTORY = "servicefactory";
11 String IMMEDIATE = "immediate";
12 String CONFIGURATION_POLICY = "configurationPolicy";
13 String ENABLED = "enabled";
14 String PROPERTIES = "properties";
15 String VERSION = "version";
16 String DESIGNATE = "designate";
17 String DESIGNATE_FACTORY = "designateFactory";
18
19 String name() default "";
20
21 Class<?>[] provide() default Object.class;
22
23 String factory() default "";
24
25 boolean servicefactory() default false;
26
27 boolean enabled() default true;
28
29 boolean immediate() default false;
30
31 ConfigurationPolicy configurationPolicy() default ConfigurationPolicy.optional;
32
33 String[] properties() default {};
34
35 Class<?> designate() default Object.class;
36
37 Class<?> designateFactory() default Object.class;
38}