[jboss-cvs] JBossAS SVN: r71780 - trunk/connector/src/main/org/jboss/resource/connectionmanager.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Apr 8 05:09:50 EDT 2008


Author: adrian at jboss.org
Date: 2008-04-08 05:09:50 -0400 (Tue, 08 Apr 2008)
New Revision: 71780

Modified:
   trunk/connector/src/main/org/jboss/resource/connectionmanager/IdleRemover.java
Log:
Fix the incorrect cast by converting to generics. Also reduced some of the noise in the logging.

Modified: trunk/connector/src/main/org/jboss/resource/connectionmanager/IdleRemover.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/connectionmanager/IdleRemover.java	2008-04-08 09:00:32 UTC (rev 71779)
+++ trunk/connector/src/main/org/jboss/resource/connectionmanager/IdleRemover.java	2008-04-08 09:09:50 UTC (rev 71780)
@@ -23,10 +23,9 @@
 
 import java.security.AccessController;
 import java.security.PrivilegedAction;
-import java.util.ArrayList;
-
 import java.util.Collection;
-import java.util.Iterator;
+import java.util.concurrent.CopyOnWriteArrayList;
+
 import org.jboss.logging.Logger;
 
 /**
@@ -39,9 +38,9 @@
  */
 public class IdleRemover 
 {
-   private final Logger log = Logger.getLogger(getClass());
+   private final static Logger log = Logger.getLogger(IdleRemover.class);
 
-   private final Collection pools = new ArrayList();
+   private final Collection<IdleConnectionRemovalSupport> pools = new CopyOnWriteArrayList<IdleConnectionRemovalSupport>();
 
    private long interval = Long.MAX_VALUE;
 
@@ -72,7 +71,7 @@
    
    private IdleRemover ()
    {
-      AccessController.doPrivileged(new PrivilegedAction()
+      AccessController.doPrivileged(new PrivilegedAction<Object>()
       {
          public Object run()
          {
@@ -87,7 +86,7 @@
    
    private void internalRegisterPool(IdleConnectionRemovalSupport mcp, long interval)
    {
-      log.debug("internalRegisterPool: registering pool with interval " + interval + " old interval: " + this.interval);
+      log.trace("internalRegisterPool: registering pool with interval " + interval + " old interval: " + this.interval);
       synchronized (pools)
       {
          pools.add(mcp);
@@ -98,7 +97,7 @@
             if (next > maybeNext && maybeNext > 0) 
             {
                next = maybeNext;
-               log.debug("internalRegisterPool: about to notify thread: old next: " + next + ", new next: " + maybeNext);
+               log.trace("internalRegisterPool: about to notify thread: old next: " + next + ", new next: " + maybeNext);
                pools.notify();
             }
          }
@@ -112,7 +111,7 @@
          pools.remove(mcp);
          if (pools.size() == 0) 
          {
-            log.debug("internalUnregisterPool: setting interval to Long.MAX_VALUE");
+            log.trace("internalUnregisterPool: setting interval to Long.MAX_VALUE");
             interval = Long.MAX_VALUE;
          }
       }
@@ -134,7 +133,7 @@
       if (sm == null)
          Thread.currentThread().setContextClassLoader(cl);
       
-      AccessController.doPrivileged(new PrivilegedAction()
+      AccessController.doPrivileged(new PrivilegedAction<Object>()
       {
          public Object run()
          {
@@ -160,9 +159,9 @@
                try 
                {
                   pools.wait(interval);
-                  log.debug("run: IdleRemover notifying pools, interval: " + interval);
-                  for (Iterator i = pools.iterator(); i.hasNext(); ) 
-                     ((InternalManagedConnectionPool)i.next()).removeIdleConnections();
+                  log.trace("run: IdleRemover notifying pools, interval: " + interval);
+                  for (IdleConnectionRemovalSupport pool : pools ) 
+                     pool.removeIdleConnections();
                   next = System.currentTimeMillis() + interval;
                   if (next < 0) 
                      next = Long.MAX_VALUE;      
@@ -170,7 +169,7 @@
                }
                catch (InterruptedException ie)
                {
-                  log.info("run: IdleRemover has been interrupted, returning");
+                  log.debug("run: IdleRemover has been interrupted, ending");
                   return;  
                }
                catch (RuntimeException e)




More information about the jboss-cvs-commits mailing list