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
       
&lt;schema&gt;:\\&lt;host&gt;:&lt;port&gt;\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]

Reply via email to