All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.nakedobjects.plugins.htmlviewer.html.AbstractHtmlPage Maven / Gradle / Ivy

The newest version!
package org.nakedobjects.plugins.htmlviewer.html;

import java.io.PrintWriter;
import java.util.StringTokenizer;

import org.nakedobjects.plugins.htmlviewer.component.Block;
import org.nakedobjects.plugins.htmlviewer.component.Component;
import org.nakedobjects.plugins.htmlviewer.component.Page;


public abstract class AbstractHtmlPage implements Component, Page {
    private final StringBuffer debug = new StringBuffer();
    private final Block pageHeader = new Div(null, "page-header");
    private final String siteFooter;
    private final String siteHeader;
    private final String styleSheet;
    private String title = "Naked Objects";

    public AbstractHtmlPage(final String styleSheet, final String header, final String footer) {
        this.styleSheet = styleSheet == null ? "default.css" : styleSheet;
        this.siteHeader = header;
        this.siteFooter = footer;
    }

    public void addDebug(final String html) {
        debug.append("
"); debug.append(html); debug.append("
"); } public void addDebug(final String name, final String value) { debug.append("
"); debug.append(""); debug.append(name); debug.append(": "); debug.append(value); debug.append("
"); } public Block getPageHeader() { return pageHeader; } public void setTitle(final String title) { this.title = title; } public void write(final PrintWriter writer) { writer .println(""); writer.println(""); writer.println(" "); writer.print(" "); writer.print(title); writer.println(""); writer.println(" "); final StringTokenizer st = new StringTokenizer(styleSheet, ","); int i = 0; while (st.hasMoreTokens()) { final String style = st.nextToken().trim(); writer.print(" 0) { writer.print("alternate "); } writer.print("stylesheet\" title=\"Style " + i + "\" href=\"./"); writer.print(style); writer.println("\" type=\"text/css\" media=\"all\"/>"); } writer.println(" "); writer.println(" "); if (siteHeader != null) { writer.println(" "); writer.println(siteHeader); } writeContent(writer); if (siteFooter != null) { writer.println(" "); writer.println(siteFooter); } if (debug.length() > 0) { writer.println("
"); writer.println("

Debug

"); writer.println(debug); writer.println("
"); } writer.println(" "); writer.println(""); } protected abstract void writeContent(PrintWriter writer); } // Copyright (c) Naked Objects Group Ltd.




© 2015 - 2025 Weber Informatics LLC | Privacy Policy