/** * Returns a link to the stylesheet file. * * @return an HtmlTree for the lINK tag which provides the stylesheet location */ public HtmlTree getStyleSheetProperties() { String filename = configuration.stylesheetfile; DocPath stylesheet; if (filename.length() > 0) { DocFile file = DocFile.createFileForInput(configuration, filename); stylesheet = DocPath.create(file.getName()); } else { stylesheet = DocPaths.STYLESHEET; } DocPath p = relativePath.resolve(stylesheet); HtmlTree link = HtmlTree.LINK("stylesheet", "text/css", p.getPath(), "Style"); return link; }
/** * Write the output to the file. * * @param body the documentation content to be written to the file. * @param path the path for the file. */ private void writeToFile(Content body, DocPath path) throws IOException { Content htmlDocType = configuration.isOutputHtml5() ? DocType.HTML5 : DocType.TRANSITIONAL; Content head = new HtmlTree(HtmlTag.HEAD); head.addContent( HtmlTree.TITLE(new StringContent(configuration.getText("doclet.Window_Source_title")))); head.addContent(getStyleSheetProperties()); Content htmlTree = HtmlTree.HTML(configuration.getLocale().getLanguage(), head, body); Content htmlDocument = new HtmlDocument(htmlDocType, htmlTree); configuration.message.notice("doclet.Generating_0", path.getPath()); DocFile df = DocFile.createFileForOutput(configuration, path); try (Writer w = df.openWriter()) { htmlDocument.write(w, true); } }
/** Generate a class page. */ public static void generate( ConfigurationImpl configuration, ClassUseMapper mapper, ClassDoc classdoc) { ClassUseWriter clsgen; DocPath path = DocPath.forPackage(classdoc).resolve(DocPaths.CLASS_USE).resolve(DocPath.forName(classdoc)); try { clsgen = new ClassUseWriter(configuration, mapper, path, classdoc); clsgen.generateClassUseFile(); clsgen.close(); } catch (IOException exc) { configuration.standardmessage.error( "doclet.exception_encountered", exc.toString(), path.getPath()); throw new DocletAbortException(exc); } }