/** * Get list of all the deprecated classes and members in all the Packages specified on the Command * Line. Then instantiate DeprecatedListWriter and generate File. * * @param configuration the current configuration of the doclet. */ public static void generate(ConfigurationImpl configuration) { String filename = "deprecated-list.html"; try { DeprecatedListWriter depr = new DeprecatedListWriter(configuration, filename); depr.generateDeprecatedListFile(new DeprecatedAPIListBuilder(configuration.root)); depr.close(); } catch (IOException exc) { configuration.standardmessage.error("doclet.exception_encountered", exc.toString(), filename); throw new DocletAbortException(); } }
/** * Generate a class page. * * @param configuration the current configuration of the doclet. * @param mapper the mapping of the class usage. * @param pkgdoc the package doc being documented. */ public static void generate( ConfigurationImpl configuration, ClassUseMapper mapper, PackageDoc pkgdoc) { PackageUseWriter pkgusegen; DocPath filename = DocPaths.PACKAGE_USE; try { pkgusegen = new PackageUseWriter(configuration, mapper, filename, pkgdoc); pkgusegen.generatePackageUseFile(); pkgusegen.close(); } catch (IOException exc) { configuration.standardmessage.error("doclet.exception_encountered", exc.toString(), filename); throw new DocletAbortException(exc); } }
/** * Convert the given Class to an HTML. * * @param cd the class to convert. * @param outputdir the name of the directory to output to. */ public void convertClass(ClassDoc cd, DocPath outputdir) { if (cd == null) { return; } try { SourcePosition sp = cd.position(); if (sp == null) return; Reader r; // temp hack until we can update SourcePosition API. if (sp instanceof SourcePositionImpl) { FileObject fo = ((SourcePositionImpl) sp).fileObject(); if (fo == null) return; r = fo.openReader(true); } else { File file = sp.file(); if (file == null) return; r = new FileReader(file); } int lineno = 1; String line; relativePath = DocPaths.SOURCE_OUTPUT.resolve(DocPath.forPackage(cd)).invert(); Content body = getHeader(); Content pre = new HtmlTree(HtmlTag.PRE); try (LineNumberReader reader = new LineNumberReader(r)) { while ((line = reader.readLine()) != null) { addLineNo(pre, lineno); addLine(pre, line, lineno); lineno++; } } addBlankLines(pre); Content div = HtmlTree.DIV(HtmlStyle.sourceContainer, pre); body.addContent((configuration.allowTag(HtmlTag.MAIN)) ? HtmlTree.MAIN(div) : div); writeToFile(body, outputdir.resolve(DocPath.forClass(cd))); } catch (IOException e) { e.printStackTrace(); } }