58 return new JavadocClassFinder(c); |
58 return new JavadocClassFinder(c); |
59 } |
59 } |
60 }); |
60 }); |
61 } |
61 } |
62 |
62 |
63 private DocEnv docenv; |
63 private ToolEnvironment toolEnv; |
64 private EnumSet<JavaFileObject.Kind> all = EnumSet.of(JavaFileObject.Kind.CLASS, |
64 private EnumSet<JavaFileObject.Kind> all = EnumSet.of(JavaFileObject.Kind.CLASS, |
65 JavaFileObject.Kind.SOURCE, |
65 JavaFileObject.Kind.SOURCE, |
66 JavaFileObject.Kind.HTML); |
66 JavaFileObject.Kind.HTML); |
67 private EnumSet<JavaFileObject.Kind> noSource = EnumSet.of(JavaFileObject.Kind.CLASS, |
67 private EnumSet<JavaFileObject.Kind> noSource = EnumSet.of(JavaFileObject.Kind.CLASS, |
68 JavaFileObject.Kind.HTML); |
68 JavaFileObject.Kind.HTML); |
70 |
70 |
71 private final JavacTrees trees; |
71 private final JavacTrees trees; |
72 |
72 |
73 public JavadocClassFinder(Context context) { |
73 public JavadocClassFinder(Context context) { |
74 super(context); |
74 super(context); |
75 docenv = DocEnv.instance(context); |
75 toolEnv = ToolEnvironment.instance(context); |
76 preferSource = true; |
76 preferSource = true; |
77 trees = JavacTrees.instance(context); |
77 trees = JavacTrees.instance(context); |
78 } |
78 } |
79 |
79 |
80 /** |
80 /** |
81 * Override getPackageFileKinds to include search for package.html |
81 * Override getPackageFileKinds to include search for package.html |
82 */ |
82 */ |
83 @Override |
83 @Override |
84 protected EnumSet<JavaFileObject.Kind> getPackageFileKinds() { |
84 protected EnumSet<JavaFileObject.Kind> getPackageFileKinds() { |
85 return docenv.docClasses ? noSource : all; |
85 return toolEnv.docClasses ? noSource : all; |
86 } |
86 } |
87 |
87 |
88 /** |
88 /** |
89 * Override extraFileActions to check for package documentation |
89 * Override extraFileActions to check for package documentation |
90 */ |
90 */ |
91 @Override |
91 @Override |
92 protected void extraFileActions(PackageSymbol pack, JavaFileObject fo) { |
92 protected void extraFileActions(PackageSymbol pack, JavaFileObject fo) { |
93 if (fo.isNameCompatible("package", JavaFileObject.Kind.HTML)) { |
93 if (fo.isNameCompatible("package", JavaFileObject.Kind.HTML)) { |
94 docenv.pkgToJavaFOMap.put(pack, fo); |
94 toolEnv.pkgToJavaFOMap.put(pack, fo); |
95 trees.putJavaFileObject(pack, fo); |
95 trees.putJavaFileObject(pack, fo); |
96 } |
96 } |
97 } |
97 } |
98 } |
98 } |