[jboss-cvs] JBossAS SVN: r81133 - trunk/tomcat/src/main/org/jboss/web/tomcat/statistics.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Sun Nov 16 10:17:18 EST 2008


Author: bstansberry at jboss.com
Date: 2008-11-16 10:17:17 -0500 (Sun, 16 Nov 2008)
New Revision: 81133

Modified:
   trunk/tomcat/src/main/org/jboss/web/tomcat/statistics/InvocationStatistics.java
Log:
Fix generics

Modified: trunk/tomcat/src/main/org/jboss/web/tomcat/statistics/InvocationStatistics.java
===================================================================
--- trunk/tomcat/src/main/org/jboss/web/tomcat/statistics/InvocationStatistics.java	2008-11-16 15:15:19 UTC (rev 81132)
+++ trunk/tomcat/src/main/org/jboss/web/tomcat/statistics/InvocationStatistics.java	2008-11-16 15:17:17 UTC (rev 81133)
@@ -22,10 +22,8 @@
 package org.jboss.web.tomcat.statistics;
 
 import java.io.Serializable;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Iterator;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /** A web context invocation statistics collection class.
  *
@@ -38,7 +36,7 @@
    private static final long serialVersionUID = 9153807780893455734L;
 
    /** A HashMap<String, TimeStatistic> of the method invocations */
-   private Map ctxStats;
+   private Map<String, TimeStatistic> ctxStats;
    /** The number of concurrent request across all contexts */
    public volatile int concurrentCalls = 0;
    /** The maximum number of concurrent request across all contexts */
@@ -64,7 +62,7 @@
 
    public InvocationStatistics()
    {
-      ctxStats = Collections.synchronizedMap(new HashMap());
+      ctxStats = new ConcurrentHashMap<String, TimeStatistic>();
    }
 
    /** Update the TimeStatistic for the given ctx. This does not synchronize
@@ -108,10 +106,8 @@
    {
       synchronized( ctxStats )
       {
-         Iterator iter = ctxStats.values().iterator();
-         while( iter.hasNext() )
+         for(TimeStatistic stat : ctxStats.values())
          {
-            TimeStatistic stat = (TimeStatistic) iter.next();
             stat.reset();
          }
       }
@@ -123,7 +119,7 @@
     *
     * @return A HashMap<String, TimeStatistic> of the ctx invocations
     */
-   public Map getStats()
+   public Map<String, TimeStatistic> getStats()
    {
       return ctxStats;
    }
@@ -135,11 +131,8 @@
       tmp.append(", maxConcurrentCalls: ");
       tmp.append(maxConcurrentCalls);
 
-      HashMap copy = new HashMap(ctxStats);
-      Iterator iter = copy.entrySet().iterator();
-      while( iter.hasNext() )
+      for(Map.Entry<String, TimeStatistic> entry : ctxStats.entrySet())
       {
-         Map.Entry entry = (Map.Entry) iter.next();
          TimeStatistic stat = (TimeStatistic) entry.getValue();
          tmp.append("[webCtx: ");
          tmp.append(entry.getKey());
@@ -172,12 +165,9 @@
       tmp.append("' maxConcurrentCalls='");
       tmp.append(maxConcurrentCalls);
       tmp.append("' >\n");
-
-      HashMap copy = new HashMap(ctxStats);
-      Iterator iter = copy.entrySet().iterator();
-      while( iter.hasNext() )
+      
+      for(Map.Entry<String, TimeStatistic> entry : ctxStats.entrySet())
       {
-         Map.Entry entry = (Map.Entry) iter.next();
          TimeStatistic stat = (TimeStatistic) entry.getValue();
          tmp.append("<webCtx name='");
          tmp.append(entry.getKey());




More information about the jboss-cvs-commits mailing list