@Override public void finished(TaskEvent e) { if (e.getKind() != TaskEvent.Kind.ANALYZE) return; TypeElement elem = e.getTypeElement(); for(Tree t : e.getCompilationUnit().getTypeDecls()) { if (t.getKind() == Tree.Kind.CLASS) { if (((JCClassDecl)t).sym.equals(elem)) { currentClass = (ClassTree)t; break; } } } if (currentClass != null) { verify(currentClass, elem); } }
@Override public void started(TaskEvent e) { if (e.getKind() == TaskEvent.Kind.ENTER) { CompilationUnitTree ct = e.getCompilationUnit(); if (ct != null) { compUnits.add(ct); } } }
@Override public void finished(TaskEvent taskEvent) { if (taskEvent.getKind() != Kind.ANALYZE) { return; return; ClassTree tree = JavacTrees.instance(context).getTree(taskEvent.getTypeElement()); if (tree == null) { return;
@Override public void finished(TaskEvent e) { if (e.getKind() == Kind.COMPILATION) { AnnotationUtils.clear(); } } }
public void finished(TaskEvent e) { CompilationUnitTree ct = e.getCompilationUnit(); if (ct != null) { compUnits.add(ct); } listener.finished(e); }
private void runLastRound(PrintWriter xout, int roundNumber, boolean errorStatus, TaskListener taskListener) throws IOException { roundNumber++; List<ClassSymbol> noTopLevelClasses = List.nil(); Set<TypeElement> noAnnotations = Collections.emptySet(); printRoundInfo(xout, roundNumber, noTopLevelClasses, noAnnotations, true); Set<Element> emptyRootElements = Collections.emptySet(); // immutable RoundEnvironment renv = new JavacRoundEnvironment(true, errorStatus, emptyRootElements, JavacProcessingEnvironment.this); if (taskListener != null) taskListener.started(new TaskEvent(TaskEvent.Kind.ANNOTATION_PROCESSING_ROUND)); try { discoveredProcs.iterator().runContributingProcs(renv); } finally { if (taskListener != null) taskListener.finished(new TaskEvent(TaskEvent.Kind.ANNOTATION_PROCESSING_ROUND)); } }
@Override public void finished(TaskEvent event) { if (event.getKind() != Kind.GENERATE) { return; } RefactoringResult refactoringResult; try { refactoringResult = refactoringCollection.applyChanges(event.getSourceFile().toUri()); } catch (Exception e) { PrintWriter out = Log.instance(context).getWriter(WriterKind.ERROR); out.println(e.getMessage()); out.flush(); return; } if (refactoringResult.type() == RefactoringCollection.RefactoringResultType.CHANGED) { PrintWriter out = Log.instance(context).getWriter(WriterKind.NOTICE); out.println(refactoringResult.message()); out.flush(); } } }
@Override public void finished(TaskEvent e) { switch (e.getKind()) { case PARSE: todo.add(e.getCompilationUnit()); break; } }
@Override public void finished(TaskEvent e) { if (e.getKind() == Kind.COMPILATION) { AnnotationUtils.clear(); } } }
@Override public void started(TaskEvent e) { if (e != null && e.getKind() == TaskEvent.Kind.GENERATE) { JCClassDecl tree = syms2trees.get((ClassSymbol)e.getTypeElement()); if (tree != null) pruneTree(tree, Symtab.instance(jti.getContext()), null); } } @Override
public void finished(TaskEvent e) { CompilationUnitTree ct = e.getCompilationUnit(); if (ct != null) { compUnits.add(ct); } listener.finished(e); }
@Override public void finished(TaskEvent event) { if (event.getKind() != Kind.GENERATE) { return; } RefactoringResult refactoringResult; try { refactoringResult = refactoringCollection.applyChanges(event.getSourceFile().toUri()); } catch (Exception e) { PrintWriter out = Log.instance(context).getWriter(WriterKind.ERROR); out.println(e.getMessage()); out.flush(); return; } if (refactoringResult.type() == RefactoringCollection.RefactoringResultType.CHANGED) { PrintWriter out = Log.instance(context).getWriter(WriterKind.NOTICE); out.println(refactoringResult.message()); out.flush(); } } }
@Override public void finished(TaskEvent e) { if (e.getKind() != TaskEvent.Kind.ANALYZE) return; if (processingEnv == null) { return; } TypeElement elem = e.getTypeElement(); for(Tree t : e.getCompilationUnit().getTypeDecls()) { if (t.getKind() == Tree.Kind.CLASS) { if (((JCClassDecl)t).sym.equals(elem)) { currentClass = (ClassTree)t; break; } } } if (currentClass != null) { verify(currentClass, elem); } }
@Override public void finished(TaskEvent e) { switch (e.getKind()) { case PARSE: todo.add(e.getCompilationUnit()); break; } }
@Override public void started(TaskEvent e) { switch (e.getKind()) { case ANALYZE: CompilationUnitTree tree; while ((tree = todo.poll()) != null) ds.scan(tree, null); break; } }
@Override public void finished(TaskEvent taskEvent) { if (taskEvent.getKind() != Kind.ANALYZE) { return; return; ClassTree tree = JavacTrees.instance(context).getTree(taskEvent.getTypeElement()); if (tree == null) { return;
private void process( TaskEvent e ) { Set<String> typesToProcess = new HashSet<>(); ExpressionTree pkg = e.getCompilationUnit().getPackageName(); String packageQualifier = pkg == null ? "" : (pkg.toString() + '.'); for( Tree classDecl : e.getCompilationUnit().getTypeDecls() ) { if( classDecl instanceof JCTree.JCClassDecl ) { typesToProcess.add( packageQualifier + ((JCTree.JCClassDecl)classDecl).getSimpleName() ); insertBootstrap( (JCTree.JCClassDecl)classDecl ); } } _typeProcessor.addTypesToProcess( typesToProcess ); }
@Override public void finished(TaskEvent taskEvent) { if (taskEvent.getKind() != Kind.ANALYZE) { return; return; TreePath path = JavacTrees.instance(context).getPath(taskEvent.getTypeElement()); if (path == null) { path = new TreePath(taskEvent.getCompilationUnit()); verify(seen.add(path.getLeaf()), "Duplicate FLOW event for: %s", taskEvent.getTypeElement()); Context subContext = new SubContext(context); subContext.put(ErrorProneOptions.class, errorProneOptions);