test/tools/javac/T6403466.java

changeset 494
af18e3956985
parent 1
9a66ca7c79fa
child 554
9d9f26857129
     1.1 --- a/test/tools/javac/T6403466.java	Mon Feb 15 16:09:50 2010 -0800
     1.2 +++ b/test/tools/javac/T6403466.java	Mon Feb 15 18:20:57 2010 -0800
     1.3 @@ -41,7 +41,6 @@
     1.4  
     1.5  @Wrap
     1.6  @SupportedAnnotationTypes("Wrap")
     1.7 -@SupportedSourceVersion(SourceVersion.RELEASE_6)
     1.8  public class T6403466 extends AbstractProcessor {
     1.9  
    1.10      static final String testSrcDir = System.getProperty("test.src");
    1.11 @@ -73,24 +72,31 @@
    1.12      }
    1.13  
    1.14      public boolean process(Set<? extends TypeElement> annos, RoundEnvironment rEnv) {
    1.15 -        Filer filer = processingEnv.getFiler();
    1.16 -        for (TypeElement anno: annos) {
    1.17 -            Set<? extends Element> elts = rEnv.getElementsAnnotatedWith(anno);
    1.18 -            System.err.println("anno: " + anno);
    1.19 -            System.err.println("elts: " + elts);
    1.20 -            for (TypeElement te: ElementFilter.typesIn(elts)) {
    1.21 -                try {
    1.22 -                    Writer out = filer.createSourceFile(te.getSimpleName() + "Wrapper").openWriter();
    1.23 -                    out.write("class " + te.getSimpleName() + "Wrapper { }");
    1.24 -                    out.close();
    1.25 -                } catch (IOException ex) {
    1.26 -                    ex.printStackTrace();
    1.27 +        if (!rEnv.processingOver()) {
    1.28 +            Filer filer = processingEnv.getFiler();
    1.29 +            for (TypeElement anno: annos) {
    1.30 +                Set<? extends Element> elts = rEnv.getElementsAnnotatedWith(anno);
    1.31 +                System.err.println("anno: " + anno);
    1.32 +                System.err.println("elts: " + elts);
    1.33 +                for (TypeElement te: ElementFilter.typesIn(elts)) {
    1.34 +                    try {
    1.35 +                        Writer out = filer.createSourceFile(te.getSimpleName() + "Wrapper").openWriter();
    1.36 +                        out.write("class " + te.getSimpleName() + "Wrapper { }");
    1.37 +                        out.close();
    1.38 +                    } catch (IOException ex) {
    1.39 +                        ex.printStackTrace();
    1.40 +                    }
    1.41                  }
    1.42 +
    1.43              }
    1.44 -
    1.45          }
    1.46          return true;
    1.47      }
    1.48 +
    1.49 +    @Override
    1.50 +    public SourceVersion getSupportedSourceVersion() {
    1.51 +        return SourceVersion.latest();
    1.52 +    }
    1.53  }
    1.54  
    1.55  @Retention(RetentionPolicy.SOURCE)

mercurial