01 /*
02 * AutoInstance.java
03 *
04 * Copyright (c) 2008, The University of Sheffield.
05 *
06 * This file is part of GATE (see http://gate.ac.uk/), and is free
07 * software, licenced under the GNU Library General Public License,
08 * Version 2, June 1991 (in the distribution as file licence.html,
09 * and also available at http://gate.ac.uk/gate/licence.html).
10 *
11 * Ian Roberts, 27/Jul/2008
12 *
13 * $Id: AutoInstance.java 9845 2008-08-25 22:23:24Z ian_roberts $
14 */
15
16 package gate.creole.metadata;
17
18 import java.lang.annotation.Retention;
19 import java.lang.annotation.RetentionPolicy;
20 import java.lang.annotation.Target;
21
22 /**
23 * Annotation used to define an instance of a resource that is created
24 * automatically when the plugin is loaded. This annotation is used as a
25 * parameter in {@link CreoleResource#autoinstances()}.
26 */
27 @Target( {})
28 @Retention(RetentionPolicy.RUNTIME)
29 public @interface AutoInstance {
30 /**
31 * Parameter values for this auto-instance. If not specified, the
32 * default values are used.
33 */
34 AutoInstanceParam[] parameters() default {};
35
36 /**
37 * Should this auto-instance be hidden in the GUI (true) or should it
38 * display just like a manually-created instance (false)?
39 */
40 boolean hidden() default false;
41 }
|