You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by cz...@apache.org on 2005/08/06 21:19:04 UTC

svn commit: r230567 - in /cocoon/trunk/src: java/org/apache/cocoon/core/ java/org/apache/cocoon/generation/ webapp/stylesheets/system/

Author: cziegeler
Date: Sat Aug  6 12:18:20 2005
New Revision: 230567

URL: http://svn.apache.org/viewcvs?rev=230567&view=rev
Log:
Add more info to status page

Modified:
    cocoon/trunk/src/java/org/apache/cocoon/core/BaseSettings.java
    cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
    cocoon/trunk/src/java/org/apache/cocoon/core/MutableSettings.java
    cocoon/trunk/src/java/org/apache/cocoon/generation/StatusGenerator.java
    cocoon/trunk/src/webapp/stylesheets/system/status2html.xslt

Modified: cocoon/trunk/src/java/org/apache/cocoon/core/BaseSettings.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/BaseSettings.java?rev=230567&r1=230566&r2=230567&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/BaseSettings.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/BaseSettings.java Sat Aug  6 12:18:20 2005
@@ -15,7 +15,6 @@
  */
 package org.apache.cocoon.core;
 
-import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
@@ -185,7 +184,7 @@
      * @return Returns the loadClasses.
      * @see #KEY_LOAD_CLASSES
      */
-    Iterator getLoadClasses();
+    List getLoadClasses();
 
     /**
      * @return Returns the loggerManagerClassName.

Modified: cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java?rev=230567&r1=230566&r2=230567&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/CoreUtil.java Sat Aug  6 12:18:20 2005
@@ -702,7 +702,7 @@
      * strip any whitespace from the entry.</p>
      */
     protected void forceLoad() {
-        final Iterator i = this.settings.getLoadClasses();
+        final Iterator i = this.settings.getLoadClasses().iterator();
         while (i.hasNext()) {
             final String fqcn = (String)i.next();
             try {

Modified: cocoon/trunk/src/java/org/apache/cocoon/core/MutableSettings.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/core/MutableSettings.java?rev=230567&r1=230566&r2=230567&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/core/MutableSettings.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/core/MutableSettings.java Sat Aug  6 12:18:20 2005
@@ -388,8 +388,8 @@
     /**
      * @return Returns the loadClasses.
      */
-    public Iterator getLoadClasses() {
-        return this.loadClasses.iterator();
+    public List getLoadClasses() {
+        return this.loadClasses;
     }
 
     /**

Modified: cocoon/trunk/src/java/org/apache/cocoon/generation/StatusGenerator.java
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/java/org/apache/cocoon/generation/StatusGenerator.java?rev=230567&r1=230566&r2=230567&view=diff
==============================================================================
--- cocoon/trunk/src/java/org/apache/cocoon/generation/StatusGenerator.java (original)
+++ cocoon/trunk/src/java/org/apache/cocoon/generation/StatusGenerator.java Sat Aug  6 12:18:20 2005
@@ -15,6 +15,7 @@
  */
 package org.apache.cocoon.generation;
 
+import java.io.File;
 import java.io.IOException;
 import java.net.InetAddress;
 import java.net.UnknownHostException;
@@ -28,6 +29,9 @@
 import java.util.Properties;
 import java.util.StringTokenizer;
 
+import org.apache.avalon.framework.context.Context;
+import org.apache.avalon.framework.context.ContextException;
+import org.apache.avalon.framework.context.Contextualizable;
 import org.apache.avalon.framework.parameters.Parameters;
 import org.apache.avalon.framework.service.ServiceException;
 import org.apache.avalon.framework.service.ServiceManager;
@@ -88,7 +92,8 @@
  * @version $Id$
  */
 public class StatusGenerator 
-    extends ServiceableGenerator {
+    extends ServiceableGenerator
+    implements Contextualizable {
 
     
     private static final String SHOW_CONTINUATIONS_INFO = "show-cont";    
@@ -112,6 +117,9 @@
     /** The Cocoon core. */
     protected Core core;
 
+    /** The component context. */
+    protected Context context;
+
     /**
      * The XML namespace for the output document.
      */
@@ -129,6 +137,10 @@
      */
     protected static final String xlinkPrefix = "xlink";
 
+    public void contextualize(Context context) throws ContextException {
+        this.context = context;
+    }
+
     /**
      * Set the current <code>ServiceManager</code> instance used by this
      * <code>Serviceable</code>.
@@ -269,8 +281,11 @@
         startGroup("vm");
         // BEGIN Memory status
         startGroup("memory");
-        addValue("total", String.valueOf(Runtime.getRuntime().totalMemory()));
-        addValue("free", String.valueOf(Runtime.getRuntime().freeMemory()));
+        final long totalMemory = Runtime.getRuntime().totalMemory();
+        final long freeMemory = Runtime.getRuntime().freeMemory();
+        addValue("total", String.valueOf(totalMemory));
+        addValue("used", String.valueOf(totalMemory - freeMemory));
+        addValue("free", String.valueOf(freeMemory));
         endGroup();
         // END Memory status
 
@@ -305,6 +320,23 @@
         }
         // END ClassPath
 
+        // BEGIN CONTEXT CLASSPATH
+        String contextClassPath = null;
+        try {
+            contextClassPath = (String)this.context.get(Constants.CONTEXT_CLASSPATH);
+        } catch (ContextException ce) {
+            // we ignore this
+        }
+        if ( contextClassPath != null ) {
+            List paths = new ArrayList();
+            StringTokenizer tokenizer = new StringTokenizer(contextClassPath, File.pathSeparator);
+            while (tokenizer.hasMoreTokens()) {
+                paths.add(tokenizer.nextToken());
+            }
+            addMultilineValue("context-classpath", paths);            
+        }
+        // END CONTEXT CLASSPATH
+
         // BEGIN Cache
         if (this.storejanitor != null) {
             startGroup("Store-Janitor");
@@ -396,8 +428,8 @@
         this.startGroup("Base Settings");
         
         this.addValue(Settings.KEY_CONFIGURATION, s.getConfiguration());
-        this.addValue(Settings.KEY_EXTRA_CLASSPATHS, s.getExtraClasspaths());
-        this.addValue(Settings.KEY_LOAD_CLASSES, s.getLoadClasses());
+        this.addMultilineValue(Settings.KEY_EXTRA_CLASSPATHS, s.getExtraClasspaths());
+        this.addMultilineValue(Settings.KEY_LOAD_CLASSES, s.getLoadClasses());
         this.addValue(Settings.KEY_FORCE_PROPERTIES, s.getForceProperties());
         this.addValue(Settings.KEY_LOGGING_CONFIGURATION, s.getLoggingConfiguration());
         this.addValue(Settings.KEY_LOGGING_BOOTSTRAP_LOGLEVEL, s.getBootstrapLogLevel());

Modified: cocoon/trunk/src/webapp/stylesheets/system/status2html.xslt
URL: http://svn.apache.org/viewcvs/cocoon/trunk/src/webapp/stylesheets/system/status2html.xslt?rev=230567&r1=230566&r2=230567&view=diff
==============================================================================
--- cocoon/trunk/src/webapp/stylesheets/system/status2html.xslt (original)
+++ cocoon/trunk/src/webapp/stylesheets/system/status2html.xslt Sat Aug  6 12:18:20 2005
@@ -112,7 +112,7 @@
     <li>
       <span class="description"><xsl:value-of select="@status:name"/><xsl:text>: </xsl:text></span>
       <xsl:choose>
-        <xsl:when test="contains(@status:name,'free') or contains(@status:name,'total')">
+        <xsl:when test="contains(@status:name,'free') or contains(@status:name,'total') or contains(@status:name,'used')">
           <xsl:call-template name="suffix">
             <xsl:with-param name="bytes" select="number(.)"/>
           </xsl:call-template>