21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package javax.annotation.processing;
27
28 import java.util.Set;
29 import java.util.HashSet;
30 import java.util.Collections;
31 import java.util.Objects;
32 import javax.lang.model.element.*;
33 import javax.lang.model.SourceVersion;
34 import javax.tools.Diagnostic;
35
36 /**
37 * An abstract annotation processor designed to be a convenient
38 * superclass for most concrete annotation processors. This class
39 * examines annotation values to compute the {@linkplain
40 * #getSupportedOptions options}, {@linkplain
41 * #getSupportedAnnotationTypes annotations}, and {@linkplain
42 * #getSupportedSourceVersion source version} supported by its
43 * subtypes.
44 *
45 * <p>The getter methods may {@linkplain Messager#printMessage issue
46 * warnings} about noteworthy conditions using the facilities available
47 * after the processor has been {@linkplain #isInitialized
48 * initialized}.
49 *
50 * <p>Subclasses are free to override the implementation and
51 * specification of any of the methods in this class as long as the
52 * general {@link javax.annotation.processing.Processor Processor}
53 * contract for that method is obeyed.
54 *
55 * @author Joseph D. Darcy
56 * @author Scott Seligman
57 * @author Peter von der Ahé
58 * @since 1.6
59 */
60 public abstract class AbstractProcessor implements Processor {
61 /**
|
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
23 * questions.
24 */
25
26 package javax.annotation.processing;
27
28 import java.util.Set;
29 import java.util.HashSet;
30 import java.util.Collections;
31 import java.util.Objects;
32 import javax.lang.model.element.*;
33 import javax.lang.model.SourceVersion;
34 import javax.tools.Diagnostic;
35
36 /**
37 * An abstract annotation processor designed to be a convenient
38 * superclass for most concrete annotation processors. This class
39 * examines annotation values to compute the {@linkplain
40 * #getSupportedOptions options}, {@linkplain
41 * #getSupportedAnnotationTypes annotation types}, and {@linkplain
42 * #getSupportedSourceVersion source version} supported by its
43 * subtypes.
44 *
45 * <p>The getter methods may {@linkplain Messager#printMessage issue
46 * warnings} about noteworthy conditions using the facilities available
47 * after the processor has been {@linkplain #isInitialized
48 * initialized}.
49 *
50 * <p>Subclasses are free to override the implementation and
51 * specification of any of the methods in this class as long as the
52 * general {@link javax.annotation.processing.Processor Processor}
53 * contract for that method is obeyed.
54 *
55 * @author Joseph D. Darcy
56 * @author Scott Seligman
57 * @author Peter von der Ahé
58 * @since 1.6
59 */
60 public abstract class AbstractProcessor implements Processor {
61 /**
|