equal
deleted
inserted
replaced
27 * @summary Make sure extraction of non-private APIs work as expected. |
27 * @summary Make sure extraction of non-private APIs work as expected. |
28 * @library /tools/lib |
28 * @library /tools/lib |
29 * @modules jdk.compiler/com.sun.tools.javac.api |
29 * @modules jdk.compiler/com.sun.tools.javac.api |
30 * jdk.compiler/com.sun.tools.javac.main |
30 * jdk.compiler/com.sun.tools.javac.main |
31 * jdk.compiler/com.sun.tools.sjavac |
31 * jdk.compiler/com.sun.tools.sjavac |
32 * jdk.jdeps/com.sun.tools.javap |
32 * jdk.compiler/com.sun.tools.sjavac.options |
33 * @build Wrapper toolbox.ToolBox |
33 * jdk.compiler/com.sun.tools.sjavac.pubapi |
|
34 * @build Wrapper toolbox.ToolBox toolbox.JavacTask |
34 * @run main Wrapper ApiExtraction |
35 * @run main Wrapper ApiExtraction |
35 */ |
36 */ |
|
37 |
36 import static java.util.Arrays.asList; |
38 import static java.util.Arrays.asList; |
37 import static java.util.Collections.emptyList; |
39 import static java.util.Collections.emptyList; |
38 import static javax.lang.model.element.Modifier.FINAL; |
40 import static javax.lang.model.element.Modifier.FINAL; |
39 import static javax.lang.model.element.Modifier.PROTECTED; |
41 import static javax.lang.model.element.Modifier.PROTECTED; |
40 import static javax.lang.model.element.Modifier.PUBLIC; |
42 import static javax.lang.model.element.Modifier.PUBLIC; |
54 import com.sun.tools.sjavac.pubapi.PubMethod; |
56 import com.sun.tools.sjavac.pubapi.PubMethod; |
55 import com.sun.tools.sjavac.pubapi.PubType; |
57 import com.sun.tools.sjavac.pubapi.PubType; |
56 import com.sun.tools.sjavac.pubapi.PubVar; |
58 import com.sun.tools.sjavac.pubapi.PubVar; |
57 import com.sun.tools.sjavac.pubapi.ReferenceTypeDesc; |
59 import com.sun.tools.sjavac.pubapi.ReferenceTypeDesc; |
58 |
60 |
|
61 import toolbox.JavacTask; |
|
62 import toolbox.ToolBox; |
59 |
63 |
60 public class ApiExtraction { |
64 public class ApiExtraction { |
61 public static void main(String[] args) throws IOException { |
65 public static void main(String[] args) throws IOException { |
62 |
66 |
63 String testSrc = String.join("\n", |
67 String testSrc = String.join("\n", |
84 " }", |
88 " }", |
85 " final class DummyInner2 { }", |
89 " final class DummyInner2 { }", |
86 "}"); |
90 "}"); |
87 |
91 |
88 // Create class file to extract API from |
92 // Create class file to extract API from |
89 new ToolBox().new JavacTask().sources(testSrc).run(); |
93 new JavacTask(new ToolBox()).sources(testSrc).run(); |
90 |
94 |
91 // Extract PubApi |
95 // Extract PubApi |
92 Options options = Options.parseArgs("-d", "bin", "--state-dir=bin", "-cp", "."); |
96 Options options = Options.parseArgs("-d", "bin", "--state-dir=bin", "-cp", "."); |
93 PubApiExtractor pubApiExtr = new PubApiExtractor(options); |
97 PubApiExtractor pubApiExtr = new PubApiExtractor(options); |
94 PubApi actualApi = pubApiExtr.getPubApi("TestClass"); |
98 PubApi actualApi = pubApiExtr.getPubApi("TestClass"); |