[jboss-cvs] JBossAS SVN: r76091 - in trunk/connector: src/main/org/jboss/resource/adapter/jdbc and 5 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Jul 22 05:18:38 EDT 2008


Author: jesper.pedersen
Date: 2008-07-22 05:18:37 -0400 (Tue, 22 Jul 2008)
New Revision: 76091

Modified:
   trunk/connector/build.xml
   trunk/connector/pom.xml
   trunk/connector/src/main/org/jboss/resource/adapter/jdbc/BaseWrapperManagedConnection.java
   trunk/connector/src/main/org/jboss/resource/adapter/jdbc/CachedPreparedStatement.java
   trunk/connector/src/main/org/jboss/resource/adapter/jms/JmsResourceAdapter.java
   trunk/connector/src/main/org/jboss/resource/adapter/mail/MailResourceAdapter.java
   trunk/connector/src/main/org/jboss/resource/adapter/mail/inflow/NewMsgsWorker.java
   trunk/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java
   trunk/connector/src/main/org/jboss/resource/connectionmanager/JBossManagedConnectionPool.java
   trunk/connector/src/main/org/jboss/resource/connectionmanager/TxConnectionManager.java
   trunk/connector/src/main/org/jboss/resource/metadata/ConnectorMetaData.java
   trunk/connector/src/main/org/jboss/resource/metadata/DescriptionMetaDataContainer.java
Log:
[JBAS-5788] Replace Oswego usage with java.util.concurrent

Modified: trunk/connector/build.xml
===================================================================
--- trunk/connector/build.xml	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/build.xml	2008-07-22 09:18:37 UTC (rev 76091)
@@ -76,19 +76,18 @@
     <path id="library.classpath">
       <path refid="apache.log4j.classpath"/>
       <path refid="apache.commons.classpath"/>
-      <path refid="oswego.concurrent.classpath"/>
-       <path refid="sun.javamail.classpath"/>
-       <path refid="quartz.quartz.classpath"/>
-       <path refid="jboss.metadata.classpath"/>       
-       <path refid="jboss.jboss.deployers.classpath"/>      
-       <path refid="jboss.jboss.cl.classpath"/>
-       <path refid="jboss.jboss.man.classpath"/>      
-       <path refid="jboss.jboss.mdr.classpath"/>      
-       <path refid="jboss.jboss.reflect.classpath"/>      
-       <path refid="jboss.microcontainer.classpath"/>
-       <path refid="jboss.jboss.vfs.classpath"/>
-       <path refid="sun.jaxb.classpath"/>
-       <path refid="sun.jaf.classpath"/>
+      <path refid="sun.javamail.classpath"/>
+      <path refid="quartz.quartz.classpath"/>
+      <path refid="jboss.metadata.classpath"/>       
+      <path refid="jboss.jboss.deployers.classpath"/>      
+      <path refid="jboss.jboss.cl.classpath"/>
+      <path refid="jboss.jboss.man.classpath"/>      
+      <path refid="jboss.jboss.mdr.classpath"/>      
+      <path refid="jboss.jboss.reflect.classpath"/>      
+      <path refid="jboss.microcontainer.classpath"/>
+      <path refid="jboss.jboss.vfs.classpath"/>
+      <path refid="sun.jaxb.classpath"/>
+      <path refid="sun.jaf.classpath"/>
       <path refid="jboss.integration.classpath"/>
       <path refid="stax.api.classpath"/>
     </path>

Modified: trunk/connector/pom.xml
===================================================================
--- trunk/connector/pom.xml	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/pom.xml	2008-07-22 09:18:37 UTC (rev 76091)
@@ -155,10 +155,6 @@
       <artifactId>jta</artifactId>
     </dependency>
     <dependency>
-      <groupId>oswego-concurrent</groupId>
-      <artifactId>concurrent</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.jboss.deployers</groupId>
       <artifactId>jboss-deployers-structure-spi</artifactId>
     </dependency>
@@ -172,4 +168,4 @@
     </dependency>
   </dependencies>
   
-</project>
\ No newline at end of file
+</project>

Modified: trunk/connector/src/main/org/jboss/resource/adapter/jdbc/BaseWrapperManagedConnection.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/jdbc/BaseWrapperManagedConnection.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/adapter/jdbc/BaseWrapperManagedConnection.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -35,6 +35,7 @@
 import java.util.Properties;
 import java.util.Set;
 import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.concurrent.locks.ReentrantLock;
 
 import javax.resource.ResourceException;
@@ -49,8 +50,6 @@
 import org.jboss.logging.Logger;
 import org.jboss.resource.JBossResourceException;
 
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-
 import org.jboss.resource.statistic.JBossConnectionStatistics;
 
 /**
@@ -88,7 +87,7 @@
 
    protected boolean inManagedTransaction = false;
 
-   protected SynchronizedBoolean inLocalTransaction = new SynchronizedBoolean(false);
+   protected AtomicBoolean inLocalTransaction = new AtomicBoolean(false);
 
    protected boolean jdbcAutoCommit = true;
 
@@ -548,7 +547,7 @@
          }
       }
 
-      if (jdbcAutoCommit == false && inLocalTransaction.set(true) == false)
+      if (jdbcAutoCommit == false && inLocalTransaction.getAndSet(true) == false)
       {
          ArrayList copy;
          synchronized (cels)
@@ -600,7 +599,7 @@
          this.jdbcAutoCommit = jdbcAutoCommit;
       }
 
-      if (jdbcAutoCommit && inLocalTransaction.set(false))
+      if (jdbcAutoCommit && inLocalTransaction.getAndSet(false))
       {
          ArrayList copy;
          synchronized (cels)
@@ -663,7 +662,7 @@
       }
       con.commit();
 
-      if (inLocalTransaction.set(false))
+      if (inLocalTransaction.getAndSet(false))
       {
          ArrayList copy;
          synchronized (cels)
@@ -697,7 +696,7 @@
       }
       con.rollback();
 
-      if (inLocalTransaction.set(false))
+      if (inLocalTransaction.getAndSet(false))
       {
          ArrayList copy;
          synchronized (cels)

Modified: trunk/connector/src/main/org/jboss/resource/adapter/jdbc/CachedPreparedStatement.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/jdbc/CachedPreparedStatement.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/adapter/jdbc/CachedPreparedStatement.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -34,10 +34,9 @@
 import java.sql.Connection;
 import java.math.BigDecimal;
 import java.util.Calendar;
+import java.util.concurrent.atomic.AtomicBoolean;
+import java.util.concurrent.atomic.AtomicInteger;
 
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedInt;
-
 /**
  * Wrapper class for cached PreparedStatements.  Keeps a refcount.  When this refcount reaches 0,
  * it will close ps.
@@ -49,8 +48,8 @@
 public abstract class CachedPreparedStatement extends JBossWrapper implements PreparedStatement
 {
    private PreparedStatement ps;
-   private SynchronizedBoolean cached = new SynchronizedBoolean(true);
-   private SynchronizedInt inUse = new SynchronizedInt(1);
+   private AtomicBoolean cached = new AtomicBoolean(true);
+   private AtomicInteger inUse = new AtomicInteger(1);
 
    private int defaultMaxFieldSize;
    private int defaultMaxRows;
@@ -302,7 +301,7 @@
    
    public void inUse()
    {
-      inUse.increment();
+      inUse.incrementAndGet();
    }
 
    public void agedOut() throws SQLException
@@ -314,8 +313,7 @@
 
    public void close() throws SQLException
    {
-      inUse.decrement();
-      if (inUse.get() == 0)
+      if (inUse.decrementAndGet() == 0)
       {
          if (cached.get() == false)
             ps.close();

Modified: trunk/connector/src/main/org/jboss/resource/adapter/jms/JmsResourceAdapter.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/jms/JmsResourceAdapter.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/adapter/jms/JmsResourceAdapter.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -23,6 +23,7 @@
 
 import java.util.Iterator;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 import javax.resource.ResourceException;
 import javax.resource.spi.ActivationSpec;
@@ -37,8 +38,6 @@
 import org.jboss.resource.adapter.jms.inflow.JmsActivation;
 import org.jboss.resource.adapter.jms.inflow.JmsActivationSpec;
 
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
 /**
  * A generic resource adapter for any JMS server.
  * 
@@ -54,7 +53,7 @@
    private BootstrapContext ctx;
 
    /** The activations by activation spec */
-   private ConcurrentReaderHashMap activations = new ConcurrentReaderHashMap();
+   private ConcurrentHashMap activations = new ConcurrentHashMap();
    
    /**
     * Get the work manager

Modified: trunk/connector/src/main/org/jboss/resource/adapter/mail/MailResourceAdapter.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/mail/MailResourceAdapter.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/adapter/mail/MailResourceAdapter.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -21,6 +21,8 @@
  */
 package org.jboss.resource.adapter.mail;
 
+import java.util.concurrent.ConcurrentHashMap;
+
 import javax.resource.spi.ResourceAdapter;
 import javax.resource.spi.BootstrapContext;
 import javax.resource.spi.ResourceAdapterInternalException;
@@ -35,7 +37,6 @@
 import org.jboss.resource.adapter.mail.inflow.MailActivationSpec;
 import org.jboss.resource.adapter.mail.inflow.NewMsgsWorker;
 import org.jboss.logging.Logger;
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
 
 /**
  * @author Scott.Stark at jboss.org
@@ -48,7 +49,7 @@
 
    private BootstrapContext ctx;
    /** The activations by activation spec */
-   private ConcurrentReaderHashMap activations = new ConcurrentReaderHashMap();
+   private ConcurrentHashMap activations = new ConcurrentHashMap();
    /** */
    private NewMsgsWorker newMsgsWorker;
 

Modified: trunk/connector/src/main/org/jboss/resource/adapter/mail/inflow/NewMsgsWorker.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/adapter/mail/inflow/NewMsgsWorker.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/adapter/mail/inflow/NewMsgsWorker.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -21,13 +21,14 @@
  */
 package org.jboss.resource.adapter.mail.inflow;
 
+import java.util.concurrent.PriorityBlockingQueue;
+
 import javax.resource.spi.work.Work;
 import javax.resource.spi.work.WorkManager;
 import javax.resource.spi.work.WorkException;
 import javax.resource.spi.work.WorkEvent;
 import javax.resource.spi.work.WorkListener;
 
-import EDU.oswego.cs.dl.util.concurrent.BoundedPriorityQueue;
 import org.jboss.logging.Logger;
 
 /**
@@ -40,14 +41,14 @@
    private static Logger log = Logger.getLogger(NewMsgsWorker.class);
    private boolean released;
    private WorkManager mgr;
-   private BoundedPriorityQueue pollQueue;
+   private PriorityBlockingQueue pollQueue;
    private boolean trace;
 
    public NewMsgsWorker(WorkManager mgr)
    {
       this.mgr = mgr;
       // The capacity needs to be externalized
-      this.pollQueue = new BoundedPriorityQueue(1024);
+      this.pollQueue = new PriorityBlockingQueue(1024);
       this.trace = log.isTraceEnabled();
    }
 

Modified: trunk/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/connectionmanager/InternalManagedConnectionPool.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -26,6 +26,9 @@
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Set;
+import java.util.concurrent.Semaphore;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
 
 import javax.resource.ResourceException;
 import javax.resource.spi.ConnectionRequestInfo;
@@ -38,9 +41,6 @@
 import org.jboss.resource.JBossResourceException;
 import org.jboss.util.UnreachableStatementException;
 
-import EDU.oswego.cs.dl.util.concurrent.FIFOSemaphore;
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-
 /**
  * The internal pool implementation
  *
@@ -76,7 +76,7 @@
    private ArrayList cls;
 
    /** The permits used to control who can checkout a connection */
-   private final FIFOSemaphore permits;
+   private final Semaphore permits;
 
    /** The log */
    private final Logger log;
@@ -94,7 +94,7 @@
    private boolean started = false;
 
    /** Whether the pool has been shutdown */
-   private SynchronizedBoolean shutdown = new SynchronizedBoolean(false);
+   private AtomicBoolean shutdown = new AtomicBoolean(false);
 
    /** the max connections ever checked out **/
    private volatile int maxUsedConnections = 0;
@@ -120,7 +120,7 @@
       this.log = log;
       this.trace = log.isTraceEnabled();
       cls = new ArrayList(this.maxSize);
-      permits = new FIFOSemaphore(this.maxSize);
+      permits = new Semaphore(this.maxSize);
   
       if(poolParams.prefill){
          
@@ -148,7 +148,7 @@
 
    public long getAvailableConnections()
    {
-      return permits.permits();
+      return permits.availablePermits();
    }
 
    public int getMaxConnectionsInUseCount()
@@ -175,7 +175,7 @@
       {
          connectionCounter.updateBlockTime(System.currentTimeMillis() - startWait);
          
-         if (permits.attempt(poolParams.blockingTimeout))
+         if (permits.tryAcquire(poolParams.blockingTimeout, TimeUnit.MILLISECONDS))
          {
             long poolBlockTime =  System.currentTimeMillis() - startWait ;
             connectionCounter.updateBlockTime(poolBlockTime);
@@ -196,7 +196,7 @@
                   {
                      cl = (ConnectionListener) cls.remove(cls.size() - 1);
                      checkedOut.add(cl);
-                     int size = (int) (maxSize - permits.permits());
+                     int size = (int) (maxSize - permits.availablePermits());
                      if (size > maxUsedConnections)
                         maxUsedConnections = size;
                   }
@@ -258,7 +258,7 @@
                synchronized (cls)
                {
                   checkedOut.add(cl);
-                  int size = (int) (maxSize - permits.permits());
+                  int size = (int) (maxSize - permits.availablePermits());
                   if (size > maxUsedConnections)
                      maxUsedConnections = size;
                }
@@ -510,7 +510,7 @@
          // Also avoids unnessary fill checking when all connections are checked out
          try
          {
-            if (permits.attempt(poolParams.blockingTimeout))
+            if (permits.tryAcquire(poolParams.blockingTimeout, TimeUnit.MILLISECONDS))
             {
                try
                {
@@ -670,7 +670,7 @@
       if (trace)
          log.trace("Attempting to  validate connections for pool " + this);
 
-      if (permits.attempt(poolParams.blockingTimeout))
+      if (permits.tryAcquire(poolParams.blockingTimeout, TimeUnit.MILLISECONDS))
       {
 
          boolean destroyed = false;

Modified: trunk/connector/src/main/org/jboss/resource/connectionmanager/JBossManagedConnectionPool.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/connectionmanager/JBossManagedConnectionPool.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/connectionmanager/JBossManagedConnectionPool.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -26,6 +26,7 @@
 import java.util.Iterator;
 import java.util.Map;
 import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
 
 import javax.management.Notification;
 import javax.management.NotificationFilter;
@@ -62,8 +63,6 @@
 import org.jboss.system.ServiceMBeanSupport;
 import org.jboss.tm.TransactionLocal;
 
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
 /**
  * The JBossManagedConnectionPool mbean configures and supplies pooling of
  * JBossConnectionEventListeners to the BaseConnectionManager2 mbean.<p>
@@ -527,7 +526,7 @@
    public abstract static class BasePool implements ManagedConnectionPool, StatisticsReporter, PreFillPoolSupport
    {
       /** The subpools */
-      private final Map subPools = new ConcurrentReaderHashMap();
+      private final Map subPools = new ConcurrentHashMap();
 
       /** The managed connection factory */
       private final ManagedConnectionFactory mcf;

Modified: trunk/connector/src/main/org/jboss/resource/connectionmanager/TxConnectionManager.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/connectionmanager/TxConnectionManager.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/connectionmanager/TxConnectionManager.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -26,6 +26,7 @@
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Set;
+import java.util.concurrent.atomic.AtomicBoolean;
 
 import javax.management.ObjectName;
 import javax.naming.InitialContext;
@@ -53,8 +54,6 @@
 import org.jboss.tm.TxUtils;
 import org.jboss.util.NestedRuntimeException;
 
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-
 /**
  * The TxConnectionManager is a JBoss ConnectionManager
  * implementation for jca adapters implementing LocalTransaction and XAResource support.
@@ -488,7 +487,7 @@
       private final XAResource xaResource;
 
       /** Whether there is a local transaction */
-      private SynchronizedBoolean localTransaction = new SynchronizedBoolean(false);
+      private AtomicBoolean localTransaction = new AtomicBoolean(false);
       
       public TxConnectionEventListener(final ManagedConnection mc, final ManagedConnectionPool mcp, final Object context, Logger log, final XAResource xaResource) throws ResourceException
       {

Modified: trunk/connector/src/main/org/jboss/resource/metadata/ConnectorMetaData.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/metadata/ConnectorMetaData.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/metadata/ConnectorMetaData.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -26,9 +26,8 @@
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Locale;
+import java.util.concurrent.ConcurrentHashMap;
 
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
 /**
  * Connector meta data
  *
@@ -37,7 +36,7 @@
  */
 public class ConnectorMetaData extends ConfigPropertyMetaDataContainer
 {
-   private static final long serialVersionUID = -3049391010669865389L;
+   private static final long serialVersionUID = 7047130842894140222L;
 
    /** The url TODO move to RARDeploymentMetaData */
    private URL url;
@@ -64,7 +63,7 @@
    private LicenseMetaData lmd = new LicenseMetaData();
 
    /** The descriptions */
-   private ConcurrentReaderHashMap descriptions = new ConcurrentReaderHashMap();
+   private ConcurrentHashMap descriptions = new ConcurrentHashMap();
 
    /** The connection definitions */
    private HashSet connectionDefinitions = new HashSet();

Modified: trunk/connector/src/main/org/jboss/resource/metadata/DescriptionMetaDataContainer.java
===================================================================
--- trunk/connector/src/main/org/jboss/resource/metadata/DescriptionMetaDataContainer.java	2008-07-22 08:57:41 UTC (rev 76090)
+++ trunk/connector/src/main/org/jboss/resource/metadata/DescriptionMetaDataContainer.java	2008-07-22 09:18:37 UTC (rev 76091)
@@ -25,9 +25,8 @@
 import java.util.Collection;
 import java.util.Iterator;
 import java.util.Locale;
+import java.util.concurrent.ConcurrentHashMap;
 
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
 /**
  * An abstract class for meta data that has descriptions
  *
@@ -36,10 +35,10 @@
  */
 public class DescriptionMetaDataContainer implements Serializable
 {
-   private static final long serialVersionUID = 2831943526217092377L;
+   private static final long serialVersionUID = -8988666040600469357L;
 
    /** The descriptions */
-   private ConcurrentReaderHashMap descriptions = new ConcurrentReaderHashMap();
+   private ConcurrentHashMap descriptions = new ConcurrentHashMap();
 
    public DescriptionMetaDataContainer()
    {




More information about the jboss-cvs-commits mailing list