langtools/src/jdk.compiler/share/classes/com/sun/tools/javac/api/BasicJavacTask.java
changeset 26266 2d24bda701dc
parent 26264 a09fedde76be
child 27387 54142fc27e8a
equal deleted inserted replaced
26265:46aacfffd3b5 26266:2d24bda701dc
    47 import com.sun.tools.javac.model.JavacElements;
    47 import com.sun.tools.javac.model.JavacElements;
    48 import com.sun.tools.javac.model.JavacTypes;
    48 import com.sun.tools.javac.model.JavacTypes;
    49 import com.sun.tools.javac.processing.JavacProcessingEnvironment;
    49 import com.sun.tools.javac.processing.JavacProcessingEnvironment;
    50 import com.sun.tools.javac.tree.JCTree;
    50 import com.sun.tools.javac.tree.JCTree;
    51 import com.sun.tools.javac.util.Context;
    51 import com.sun.tools.javac.util.Context;
       
    52 import com.sun.tools.javac.util.DefinedBy;
       
    53 import com.sun.tools.javac.util.DefinedBy.Api;
    52 import com.sun.tools.javac.util.List;
    54 import com.sun.tools.javac.util.List;
    53 import com.sun.tools.javac.util.Log;
    55 import com.sun.tools.javac.util.Log;
    54 import com.sun.tools.javac.util.PropagatedException;
    56 import com.sun.tools.javac.util.PropagatedException;
    55 import com.sun.tools.javac.util.ServiceLoader;
    57 import com.sun.tools.javac.util.ServiceLoader;
    56 
    58 
    77         context = c;
    79         context = c;
    78         if (register)
    80         if (register)
    79             context.put(JavacTask.class, this);
    81             context.put(JavacTask.class, this);
    80     }
    82     }
    81 
    83 
    82     @Override
    84     @Override @DefinedBy(Api.COMPILER_TREE)
    83     public Iterable<? extends CompilationUnitTree> parse() {
    85     public Iterable<? extends CompilationUnitTree> parse() {
    84         throw new IllegalStateException();
    86         throw new IllegalStateException();
    85     }
    87     }
    86 
    88 
    87     @Override
    89     @Override @DefinedBy(Api.COMPILER_TREE)
    88     public Iterable<? extends Element> analyze() {
    90     public Iterable<? extends Element> analyze() {
    89         throw new IllegalStateException();
    91         throw new IllegalStateException();
    90     }
    92     }
    91 
    93 
    92     @Override
    94     @Override @DefinedBy(Api.COMPILER_TREE)
    93     public Iterable<? extends JavaFileObject> generate() {
    95     public Iterable<? extends JavaFileObject> generate() {
    94         throw new IllegalStateException();
    96         throw new IllegalStateException();
    95     }
    97     }
    96 
    98 
    97     @Override
    99     @Override @DefinedBy(Api.COMPILER_TREE)
    98     public void setTaskListener(TaskListener tl) {
   100     public void setTaskListener(TaskListener tl) {
    99         MultiTaskListener mtl = MultiTaskListener.instance(context);
   101         MultiTaskListener mtl = MultiTaskListener.instance(context);
   100         if (taskListener != null)
   102         if (taskListener != null)
   101             mtl.remove(taskListener);
   103             mtl.remove(taskListener);
   102         if (tl != null)
   104         if (tl != null)
   103             mtl.add(tl);
   105             mtl.add(tl);
   104         taskListener = tl;
   106         taskListener = tl;
   105     }
   107     }
   106 
   108 
   107     @Override
   109     @Override @DefinedBy(Api.COMPILER_TREE)
   108     public void addTaskListener(TaskListener taskListener) {
   110     public void addTaskListener(TaskListener taskListener) {
   109         MultiTaskListener mtl = MultiTaskListener.instance(context);
   111         MultiTaskListener mtl = MultiTaskListener.instance(context);
   110         mtl.add(taskListener);
   112         mtl.add(taskListener);
   111     }
   113     }
   112 
   114 
   113     @Override
   115     @Override @DefinedBy(Api.COMPILER_TREE)
   114     public void removeTaskListener(TaskListener taskListener) {
   116     public void removeTaskListener(TaskListener taskListener) {
   115         MultiTaskListener mtl = MultiTaskListener.instance(context);
   117         MultiTaskListener mtl = MultiTaskListener.instance(context);
   116         mtl.remove(taskListener);
   118         mtl.remove(taskListener);
   117     }
   119     }
   118 
   120 
   119     public Collection<TaskListener> getTaskListeners() {
   121     public Collection<TaskListener> getTaskListeners() {
   120         MultiTaskListener mtl = MultiTaskListener.instance(context);
   122         MultiTaskListener mtl = MultiTaskListener.instance(context);
   121         return mtl.getTaskListeners();
   123         return mtl.getTaskListeners();
   122     }
   124     }
   123 
   125 
   124     @Override
   126     @Override @DefinedBy(Api.COMPILER_TREE)
   125     public TypeMirror getTypeMirror(Iterable<? extends Tree> path) {
   127     public TypeMirror getTypeMirror(Iterable<? extends Tree> path) {
   126         // TODO: Should complete attribution if necessary
   128         // TODO: Should complete attribution if necessary
   127         Tree last = null;
   129         Tree last = null;
   128         for (Tree node : path)
   130         for (Tree node : path)
   129             last = node;
   131             last = node;
   130         return ((JCTree)last).type;
   132         return ((JCTree)last).type;
   131     }
   133     }
   132 
   134 
   133     @Override
   135     @Override @DefinedBy(Api.COMPILER_TREE)
   134     public Elements getElements() {
   136     public Elements getElements() {
   135         if (context == null)
   137         if (context == null)
   136             throw new IllegalStateException();
   138             throw new IllegalStateException();
   137         return JavacElements.instance(context);
   139         return JavacElements.instance(context);
   138     }
   140     }
   139 
   141 
   140     @Override
   142     @Override @DefinedBy(Api.COMPILER_TREE)
   141     public Types getTypes() {
   143     public Types getTypes() {
   142         if (context == null)
   144         if (context == null)
   143             throw new IllegalStateException();
   145             throw new IllegalStateException();
   144         return JavacTypes.instance(context);
   146         return JavacTypes.instance(context);
   145     }
   147     }
   146 
   148 
   147     @Override
   149     @Override @DefinedBy(Api.COMPILER)
   148     public void setProcessors(Iterable<? extends Processor> processors) {
   150     public void setProcessors(Iterable<? extends Processor> processors) {
   149         throw new IllegalStateException();
   151         throw new IllegalStateException();
   150     }
   152     }
   151 
   153 
   152     @Override
   154     @Override @DefinedBy(Api.COMPILER)
   153     public void setLocale(Locale locale) {
   155     public void setLocale(Locale locale) {
   154         throw new IllegalStateException();
   156         throw new IllegalStateException();
   155     }
   157     }
   156 
   158 
   157     @Override
   159     @Override @DefinedBy(Api.COMPILER)
   158     public Boolean call() {
   160     public Boolean call() {
   159         throw new IllegalStateException();
   161         throw new IllegalStateException();
   160     }
   162     }
   161 
   163 
   162     /**
   164     /**