vgritsenko 02/01/31 09:01:16
Modified: . changes.xml
src/java/org/apache/cocoon/servlet CocoonServlet.java
Log:
Added X-Cocoon-Version header;
Minor performance improvements.
Revision Changes Path
1.88 +4 -1 xml-cocoon2/changes.xml
Index: changes.xml
===================================================================
RCS file: /home/cvs/xml-cocoon2/changes.xml,v
retrieving revision 1.87
retrieving revision 1.88
diff -u -r1.87 -r1.88
--- changes.xml 31 Jan 2002 16:44:22 -0000 1.87
+++ changes.xml 31 Jan 2002 17:01:15 -0000 1.88
@@ -4,7 +4,7 @@
<!--
History of Cocoon changes
- $Id: changes.xml,v 1.87 2002/01/31 16:44:22 vgritsenko Exp $
+ $Id: changes.xml,v 1.88 2002/01/31 17:01:15 vgritsenko Exp $
-->
<changes title="History of Changes">
@@ -31,6 +31,9 @@
</devs>
<release version="@version@" date="@date@">
+ <action dev="VG" type="add">
+ Added X-Cocoon-Version header to all responses generated by Cocoon.
+ </action>
<action dev="VG" type="update">
SystemID for cocoon: pseudo-protocol URIs changed from the form of
<schema>:\\<host>:<port>\path\to\resource\from\the\root\sitemap
1.4 +19 -17
xml-cocoon2/src/java/org/apache/cocoon/servlet/CocoonServlet.java
Index: CocoonServlet.java
===================================================================
RCS file:
/home/cvs/xml-cocoon2/src/java/org/apache/cocoon/servlet/CocoonServlet.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- CocoonServlet.java 22 Jan 2002 00:17:13 -0000 1.3
+++ CocoonServlet.java 31 Jan 2002 17:01:16 -0000 1.4
@@ -66,10 +66,13 @@
* @author <a href="mailto:[EMAIL PROTECTED]">Berin Loritsch</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Carsten Ziegeler</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Leo Sutic</a>
- * @version CVS $Revision: 1.3 $ $Date: 2002/01/22 00:17:13 $
+ * @version CVS $Revision: 1.4 $ $Date: 2002/01/31 17:01:16 $
*/
public class CocoonServlet extends HttpServlet {
+ protected static final String PROCESSED_BY = "Processed by "
+ + Constants.COMPLETE_NAME + " in ";
+
protected Logger log;
protected LogKitManager logKitManager;
@@ -720,6 +723,7 @@
// This is more scalable
long start = System.currentTimeMillis();
+ res.addHeader("X-Cocoon-Version", Constants.VERSION);
HttpServletRequest request = RequestWrapper.getServletRequest(req,
CocoonServlet.SAVE_UPLOADED_FILES_TO_DISK,
this.uploadDir,
@@ -773,6 +777,7 @@
}
String contentType = null;
+ ContextMap ctxMap = null;
try {
if (uri.charAt(0) == '/') {
uri = uri.substring(1);
@@ -782,8 +787,7 @@
// Initialize a fresh log context containing the object model : it
// will be used by the CocoonLogFormatter
- ContextMap ctxMap = org.apache.log.ContextMap.getCurrentContext();
- ctxMap.clear();
+ ctxMap = org.apache.log.ContextMap.getCurrentContext();
// Add thread name (default content for empty context)
String threadName = Thread.currentThread().getName();
ctxMap.set("threadName", threadName);
@@ -866,6 +870,8 @@
this, e, "fatal","Internal server error","Cocoon
servlet",null,null,extraDescriptions);
res.setContentType(contentType = Notifier.notify(n,
res.getOutputStream()));
+ } finally {
+ if (ctxMap != null) ctxMap.clear();
}
long end = System.currentTimeMillis();
@@ -1006,24 +1012,20 @@
private String processTime(long time) throws IOException {
- StringBuffer out = new StringBuffer("Processed by ")
- .append(Constants.COMPLETE_NAME)
- .append(" in ");
-
- if (time > HOUR) {
- out.append(time / HOUR);
- out.append(" hours.");
- } else if (time > MINUTE) {
- out.append(time / MINUTE);
- out.append(" minutes.");
- } else if (time > SECOND) {
+ StringBuffer out = new StringBuffer(PROCESSED_BY);
+ if (time <= SECOND) {
+ out.append(time);
+ out.append(" milliseconds.");
+ } else if (time <= MINUTE) {
out.append(time / SECOND);
out.append(" seconds.");
+ } else if (time <= HOUR) {
+ out.append(time / MINUTE);
+ out.append(" minutes.");
} else {
- out.append(time);
- out.append(" milliseconds.");
+ out.append(time / HOUR);
+ out.append(" hours.");
}
-
return out.toString();
}
----------------------------------------------------------------------
In case of troubles, e-mail: [EMAIL PROTECTED]
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]