[Yanel-commits] rev 22909 -
public/yanel/trunk/src/core/java/org/wyona/yanel/servlet
michi at wyona.com
michi at wyona.com
Fri Feb 23 14:40:03 CET 2007
Author: michi
Date: 2007-02-23 14:40:01 +0100 (Fri, 23 Feb 2007)
New Revision: 22909
Modified:
public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java
Log:
merge method added
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java 2007-02-23 13:22:46 UTC (rev 22908)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/servlet/YanelServlet.java 2007-02-23 13:40:01 UTC (rev 22909)
@@ -248,34 +248,13 @@
}
if (mimeType != null && mimeType.indexOf("html") > 0) {
if (toolbarMasterSwitch.equals("on")) {
- String backToRealm = org.wyona.yanel.core.util.PathUtil.backToRealm(path);
- StringBuffer tb = new StringBuffer();
- tb.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">");
- tb.append("<html>");
- tb.append("<head>");
- // TODO: compute relative path ...
- tb.append("<link type=\"text/css\" href=\"" + backToRealm+reservedPrefix + "/toolbar.css\" rel=\"stylesheet\"/>");
- tb.append("</head>");
- tb.append("<body>");
- tb.append("<div id=\"headerwrap\">");
- tb.append("<div id=\"menu\">");
- tb.append(getToolbarMenus());
- tb.append("</div>");
- Identity identity = (Identity) session.getAttribute(IDENTITY_KEY);
- if (identity != null) {
- tb.append("<span id=\"user\">User: " + identity.getUsername() + "</span>");
- } else {
- tb.append("<span id=\"user\">User: Not signed in!</span>");
+ InputStream in = mergeToolbarWithContent(resource, request);
+ byte buffer[] = new byte[8192];
+ int bytesRead;
+ OutputStream out = response.getOutputStream();
+ while ((bytesRead = in.read(buffer)) != -1) {
+ out.write(buffer, 0, bytesRead);
}
-
- tb.append("  <img src=\"" + backToRealm+reservedPrefix + "/yanel_toolbar_logo.png\" id=\"toolbar_logo\"/>");
- tb.append("</div>");
- tb.append("<div id=\"middlewrap\">");
- tb.append("<br/><br/>Hello Toolbar");
- tb.append("</div>");
- tb.append("</body>");
- tb.append("</html>");
- response.getWriter().print(tb);
return;
} else {
log.info("Toolbar has been disabled. Please check web.xml!");
@@ -1709,4 +1688,38 @@
sb.append("</ul></li></ul>");
return sb.toString();
}
+
+ /**
+ *
+ */
+ private InputStream mergeToolbarWithContent(Resource resource, HttpServletRequest request) throws ServletException, IOException {
+ String backToRealm = org.wyona.yanel.core.util.PathUtil.backToRealm(resource.getPath());
+ StringBuffer tb = new StringBuffer();
+ tb.append("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">");
+ tb.append("<html>");
+ tb.append("<head>");
+ // TODO: compute relative path ...
+ tb.append("<link type=\"text/css\" href=\"" + backToRealm+reservedPrefix + "/toolbar.css\" rel=\"stylesheet\"/>");
+ tb.append("</head>");
+ tb.append("<body>");
+ tb.append("<div id=\"headerwrap\">");
+ tb.append("<div id=\"menu\">");
+ tb.append(getToolbarMenus());
+ tb.append("</div>");
+ Identity identity = (Identity) request.getSession().getAttribute(IDENTITY_KEY);
+ if (identity != null) {
+ tb.append("<span id=\"user\">User: " + identity.getUsername() + "</span>");
+ } else {
+ tb.append("<span id=\"user\">User: Not signed in!</span>");
+ }
+
+ tb.append("  <img src=\"" + backToRealm+reservedPrefix + "/yanel_toolbar_logo.png\" id=\"toolbar_logo\"/>");
+ tb.append("</div>");
+ tb.append("<div id=\"middlewrap\">");
+ tb.append("<br/><br/>Hello Toolbar");
+ tb.append("</div>");
+ tb.append("</body>");
+ tb.append("</html>");
+ return new java.io.ByteArrayInputStream(tb.toString().getBytes());
+ }
}
More information about the Yanel-commits
mailing list