[jboss-cvs] JBossAS SVN: r71999 - in projects/ejb3/trunk/core/src: main/java/org/jboss/ejb3/pool and 6 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Fri Apr 11 02:34:25 EDT 2008
Author: jesper.pedersen
Date: 2008-04-11 02:34:25 -0400 (Fri, 11 Apr 2008)
New Revision: 71999
Modified:
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/JBossMessageEndpointFactory.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/MessageInflowLocalProxy.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/pool/StrictMaxPool.java
projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/statistics/InvocationStatistics.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/jca/inflow/TestResourceAdapter.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/JmsResourceAdapter.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/inflow/JmsActivation.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/SessionInvoker.java
projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/unit/StrictPoolUnitTestCase.java
Log:
[EJBTHREE-1258] Remove usage of Oswego classes
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/JBossMessageEndpointFactory.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/JBossMessageEndpointFactory.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/JBossMessageEndpointFactory.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -48,8 +48,6 @@
import org.jboss.metadata.ejb.spec.ActivationConfigPropertyMetaData;
import org.jboss.mx.util.JMXExceptionDecoder;
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedInt;
-
/**
* EJBProxyFactory for inflow message driven beans
*
@@ -84,9 +82,6 @@
/** The interfaces */
protected Class[] interfaces;
-
- /** The next proxy id */
- protected SynchronizedInt nextProxyId = new SynchronizedInt(0);
// Static --------------------------------------------------------
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/MessageInflowLocalProxy.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/MessageInflowLocalProxy.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/mdb/inflow/MessageInflowLocalProxy.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -23,6 +23,7 @@
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
+import java.util.concurrent.atomic.AtomicBoolean;
import javax.resource.ResourceException;
import javax.resource.spi.endpoint.MessageEndpointFactory;
@@ -38,8 +39,6 @@
import org.jboss.ejb3.tx.TxUtil;
import org.jboss.logging.Logger;
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-
/**
* @version <tt>$Revision$</tt>
* @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
@@ -61,7 +60,7 @@
private String cachedProxyString = null;
/** Whether this proxy has been released */
- protected SynchronizedBoolean released = new SynchronizedBoolean(false);
+ protected AtomicBoolean released = new AtomicBoolean(false);
/** Whether we have delivered a message */
protected boolean delivered = false;
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/pool/StrictMaxPool.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/pool/StrictMaxPool.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/pool/StrictMaxPool.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -22,12 +22,13 @@
package org.jboss.ejb3.pool;
import java.util.LinkedList;
+import java.util.concurrent.Semaphore;
+import java.util.concurrent.TimeUnit;
import javax.ejb.EJBException;
import org.jboss.ejb3.BeanContext;
import org.jboss.ejb3.Container;
import org.jboss.logging.Logger;
-import EDU.oswego.cs.dl.util.concurrent.FIFOSemaphore;
/**
* @author <a href="mailto:kabir.khan at jboss.org">Kabir Khan</a>
@@ -46,7 +47,7 @@
* When set, only maxSize instances may be active and any attempt to get an
* instance will block until an instance is freed.
*/
- private FIFOSemaphore strictMaxSize;
+ private Semaphore strictMaxSize;
private int inUse = 0;
/**
* The time in milliseconds to wait for the strictMaxSize semaphore.
@@ -78,7 +79,7 @@
{
super.initialize(container, maxSize, timeout);
this.maxSize = maxSize;
- this.strictMaxSize = new FIFOSemaphore(maxSize);
+ this.strictMaxSize = new Semaphore(maxSize, true);
this.strictTimeout = timeout;
}
@@ -100,7 +101,7 @@
public void setMaxSize(int maxSize)
{
this.maxSize = maxSize;
- this.strictMaxSize = new FIFOSemaphore(maxSize);
+ this.strictMaxSize = new Semaphore(maxSize, true);
}
/**
@@ -118,9 +119,9 @@
// Block until an instance is available
try
{
- boolean acquired = strictMaxSize.attempt(strictTimeout);
+ boolean acquired = strictMaxSize.tryAcquire(strictTimeout, TimeUnit.MILLISECONDS);
if (trace)
- log.trace("Acquired(" + acquired + ") strictMaxSize semaphore, remaining=" + strictMaxSize.permits());
+ log.trace("Acquired(" + acquired + ") strictMaxSize semaphore, remaining=" + strictMaxSize.availablePermits());
if (acquired == false)
throw new EJBException("Failed to acquire the pool semaphore, strictTimeout=" + strictTimeout);
}
@@ -154,9 +155,9 @@
// Block until an instance is available
try
{
- boolean acquired = strictMaxSize.attempt(strictTimeout);
+ boolean acquired = strictMaxSize.tryAcquire(strictTimeout, TimeUnit.MILLISECONDS);
if (trace)
- log.trace("Acquired(" + acquired + ") strictMaxSize semaphore, remaining=" + strictMaxSize.permits());
+ log.trace("Acquired(" + acquired + ") strictMaxSize semaphore, remaining=" + strictMaxSize.availablePermits());
if (acquired == false)
throw new EJBException("Failed to acquire the pool semaphore, strictTimeout=" + strictTimeout);
}
Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/statistics/InvocationStatistics.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/statistics/InvocationStatistics.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/statistics/InvocationStatistics.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -26,9 +26,8 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
/** A method invocation statistics collection class.
*
* @author Scott.Stark at jboss.org
@@ -65,7 +64,7 @@
public InvocationStatistics()
{
- methodStats = new ConcurrentReaderHashMap();
+ methodStats = new ConcurrentHashMap();
}
/** Update the TimeStatistic for the given method. This synchronizes on
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/jca/inflow/TestResourceAdapter.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/jca/inflow/TestResourceAdapter.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/jca/inflow/TestResourceAdapter.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -23,6 +23,7 @@
import java.util.Iterator;
import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
import javax.management.MBeanServer;
import javax.management.ObjectName;
@@ -38,8 +39,6 @@
import org.jboss.mx.util.MBeanServerLocator;
import org.jboss.mx.util.ObjectNameFactory;
-import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
-
/**
* A TestResourceAdapter.
*
@@ -52,7 +51,7 @@
BootstrapContext ctx;
- ConcurrentReaderHashMap endpoints = new ConcurrentReaderHashMap();
+ ConcurrentHashMap endpoints = new ConcurrentHashMap();
public TestResourceAdapterInflowResults testInflow() throws Exception
{
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/JmsResourceAdapter.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/JmsResourceAdapter.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/JmsResourceAdapter.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -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.ejb3.test.mdbsessionpoolclear.adapter.jms.inflow.JmsActivation;
import org.jboss.ejb3.test.mdbsessionpoolclear.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<ActivationSpec, JmsActivation> activations = new ConcurrentHashMap<ActivationSpec, JmsActivation>();
/**
* Get the work manager
@@ -69,13 +68,13 @@
public void endpointActivation(MessageEndpointFactory endpointFactory, ActivationSpec spec) throws ResourceException
{
JmsActivation activation = new JmsActivation(this, endpointFactory, (JmsActivationSpec) spec);
- activations.put(spec, activation);
+ activation = activations.putIfAbsent(spec, activation);
activation.start();
}
public void endpointDeactivation(MessageEndpointFactory endpointFactory, ActivationSpec spec)
{
- JmsActivation activation = (JmsActivation) activations.remove(spec);
+ JmsActivation activation = activations.remove(spec);
if (activation != null)
activation.stop();
}
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/inflow/JmsActivation.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/inflow/JmsActivation.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/mdbsessionpoolclear/adapter/jms/inflow/JmsActivation.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -22,6 +22,7 @@
package org.jboss.ejb3.test.mdbsessionpoolclear.adapter.jms.inflow;
import java.lang.reflect.Method;
+import java.util.concurrent.atomic.AtomicBoolean;
import javax.jms.Connection;
import javax.jms.Destination;
@@ -51,8 +52,6 @@
import org.jboss.util.Strings;
import org.jboss.util.naming.Util;
-import EDU.oswego.cs.dl.util.concurrent.SynchronizedBoolean;
-
/**
* A generic jms Activation.
*
@@ -77,7 +76,7 @@
protected MessageEndpointFactory endpointFactory;
/** Whether delivery is active */
- protected SynchronizedBoolean deliveryActive;
+ protected AtomicBoolean deliveryActive;
/** The jms provider adapter */
protected JMSProviderAdapter adapter;
@@ -210,7 +209,7 @@
*/
public void start() throws ResourceException
{
- deliveryActive = new SynchronizedBoolean(true);
+ deliveryActive = new AtomicBoolean(true);
ra.getWorkManager().scheduleWork(new SetupActivation());
}
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/SessionInvoker.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/SessionInvoker.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/SessionInvoker.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -21,8 +21,9 @@
*/
package org.jboss.ejb3.test.strictpool;
+import java.util.concurrent.CountDownLatch;
+
import org.jboss.logging.Logger;
-import EDU.oswego.cs.dl.util.concurrent.CountDown;
/** Invoker thread for StatelessSession tests.
* Adapted from the EJB 2.1 tests (org.jboss.test.cts.test.SessionInvoker)
@@ -32,11 +33,11 @@
public class SessionInvoker extends Thread
{
int id;
- CountDown done;
+ CountDownLatch done;
public Exception runEx;
StrictlyPooledSession strictlyPooledSession;
- public SessionInvoker(int id, CountDown done, StrictlyPooledSession strictlyPooledSession)
+ public SessionInvoker(int id, CountDownLatch done, StrictlyPooledSession strictlyPooledSession)
{
super("SessionInvoker#"+id);
this.id = id;
@@ -54,7 +55,7 @@
{
runEx = e;
}
- done.release();
+ done.countDown();
System.out.println("End run, this="+this);
}
Modified: projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/unit/StrictPoolUnitTestCase.java
===================================================================
--- projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/unit/StrictPoolUnitTestCase.java 2008-04-11 04:27:40 UTC (rev 71998)
+++ projects/ejb3/trunk/core/src/test/java/org/jboss/ejb3/test/strictpool/unit/StrictPoolUnitTestCase.java 2008-04-11 06:34:25 UTC (rev 71999)
@@ -23,6 +23,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
@@ -45,9 +46,6 @@
import org.jboss.ejb3.test.strictpool.StrictlyPooledSession;
import org.jboss.test.JBossTestCase;
-import EDU.oswego.cs.dl.util.concurrent.CountDown;
-
-
/**
* Adapted from the EJB 2.1 tests (org.jboss.test.cts.test.StatefulSessionUnitTestCase and
* org.jboss.test.cts.test.MDBUnitTestCase)
@@ -68,7 +66,7 @@
public void testSession() throws Exception
{
System.out.println("*** testSession");
- CountDown done = new CountDown(MAX_SIZE);
+ CountDownLatch done = new CountDownLatch(MAX_SIZE);
InitialContext ctx = new InitialContext();
StrictlyPooledSession session =(StrictlyPooledSession)ctx.lookup("StrictlyPooledSessionBean/remote");
SessionInvoker[] threads = new SessionInvoker[MAX_SIZE];
@@ -78,8 +76,8 @@
threads[n] = t;
t.start();
}
- boolean ok = done.attempt(1500 * MAX_SIZE);
- super.assertTrue("Acquired done, remaining="+done.currentCount(), ok);
+ boolean ok = done.await(1500 * MAX_SIZE, TimeUnit.MILLISECONDS);
+ super.assertTrue("Acquired done, remaining="+done.getCount(), ok);
for(int n = 0; n < MAX_SIZE; n ++)
{
More information about the jboss-cvs-commits
mailing list