User's Manual

156 Chapter 12. Presentation (Bebop) Tutorial
protected void addContents(Element layout, PageState ps) {
Element topPanel =
new Element("socksite:top", SOCKSITE_XML_NS);
layout.addContent(topPanel);
m_top.generateXML(ps, topPanel);
Element sidePanel =
new Element("socksite:side", SOCKSITE_XML_NS);
layout.addContent(sidePanel);
m_side.generateXML(ps, sidePanel);
Element bottomPanel =
new Element("socksite:bottom", SOCKSITE_XML_NS);
layout.addContent(bottomPanel);
m_bottom.generateXML(ps, bottomPanel);
Element mainPanel =
new Element("socksite:main", SOCKSITE_XML_NS);
layout.addContent(mainPanel);
m_panel.generateXML(ps, mainPanel);
}
/**
* Header component. Demonstrates dynamic content.
*/
private class SiteHeader extends Label {
public SiteHeader() {
super(new PrintListener() {
public void prepare(PrintEvent pevt) {
Label target = (Label)pevt.getTarget();
PageState ps = pevt.getPageState();
RequestContext rc =
DispatcherHelper.getRequestContext
(ps.getRequest());
target.setLabel("SockPuppet.com:
dynamic page header."
+ " You requested: " + rc.getOriginalURL());
}
}
}
}
/**
* Footer component. All static.
*/
private class SiteFooter extends Label {
public SiteFooter() {
super("SockPuppet.com: static footer.");
}
}
/**
* Sidebar component. All static.
*/
private class SiteSide extends Label {
public SiteSide() {
super("SockPuppet.com: static sidebar.");
}
}
}