01: package com.sun.codemodel;
02:
03: import java.lang.annotation.Annotation;
04:
05: /**
06: * Base interface for typed annotation writer.
07: *
08: * <p>
09: * Annotation compiler can generate a strongly typed annotation
10: * writer to assist applications to write uses of annotations.
11: * Such typed annotation writer interfaces all derive from
12: * this common interface.
13: *
14: * <p>
15: * The type parameter 'A' represents the
16: * @author Kohsuke Kawaguchi
17: */
18: public interface JAnnotationWriter<A extends Annotation> {
19: /**
20: * Gets the underlying annotation use object to which we are writing.
21: */
22: JAnnotationUse getAnnotationUse();
23:
24: /**
25: * The type of the annotation that this writer is writing.
26: */
27: Class<A> getAnnotationType();
28: }
|