diff -r 5af9fa90cd7b -r 48b88b9c11eb src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java --- a/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java Wed Nov 27 12:18:40 2019 +0100 +++ b/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/SerializedFormWriterImpl.java Wed Nov 27 13:08:16 2019 +0100 @@ -29,6 +29,7 @@ import javax.lang.model.element.TypeElement; +import jdk.javadoc.internal.doclets.formats.html.markup.ContentBuilder; import jdk.javadoc.internal.doclets.formats.html.markup.Entity; import jdk.javadoc.internal.doclets.formats.html.markup.HtmlStyle; import jdk.javadoc.internal.doclets.formats.html.markup.HtmlTag; @@ -56,11 +57,6 @@ Set visibleClasses; - /** - * HTML tree for main tag. - */ - private HtmlTree mainTree = HtmlTree.MAIN(); - private final Navigation navBar; /** @@ -69,7 +65,7 @@ public SerializedFormWriterImpl(HtmlConfiguration configuration) { super(configuration, DocPaths.SERIALIZED_FORM); visibleClasses = configuration.getIncludedTypeElements(); - this.navBar = new Navigation(null, configuration, fixedNavDiv, PageMode.SERIALIZEDFORM, path); + this.navBar = new Navigation(null, configuration, PageMode.SERIALIZEDFORM, path); } /** @@ -80,16 +76,16 @@ */ public Content getHeader(String header) { HtmlTree bodyTree = getBody(getWindowTitle(header)); - HtmlTree htmlTree = HtmlTree.HEADER(); - addTop(htmlTree); + Content headerContent = new ContentBuilder(); + addTop(headerContent); navBar.setUserHeader(getUserHeaderFooter(true)); - htmlTree.add(navBar.getContent(true)); - bodyTree.add(htmlTree); + headerContent.add(navBar.getContent(true)); Content h1Content = new StringContent(header); Content heading = HtmlTree.HEADING(Headings.PAGE_TITLE_HEADING, true, HtmlStyle.title, h1Content); Content div = HtmlTree.DIV(HtmlStyle.header, heading); - mainTree.add(div); + bodyContents.setHeader(headerContent) + .addMainContent(div); return bodyTree; } @@ -216,16 +212,14 @@ } /** - * Get the serialized content tree section. + * Add the serialized content tree section. * * @param serializedTreeContent the serialized content tree to be added - * @return a div content tree */ - public Content getSerializedContent(Content serializedTreeContent) { + public void addSerializedContent(Content serializedTreeContent) { HtmlTree divContent = HtmlTree.DIV(HtmlStyle.serializedFormContainer, serializedTreeContent); - mainTree.add(divContent); - return mainTree; + bodyContents.addMainContent(divContent); } /** @@ -238,15 +232,13 @@ /** * Add the footer. - * - * @param serializedTree the serialized tree to be added */ - public void addFooter(Content serializedTree) { + public void addFooter() { Content htmlTree = HtmlTree.FOOTER(); navBar.setUserFooter(getUserHeaderFooter(false)); htmlTree.add(navBar.getContent(false)); addBottom(htmlTree); - serializedTree.add(htmlTree); + bodyContents.setFooter(htmlTree); } /** @@ -254,6 +246,7 @@ */ @Override public void printDocument(Content serializedTree) throws DocFileIOException { + serializedTree.add(bodyContents.toContent()); printHtmlDocument(null, "serialized forms", serializedTree); }