[jboss-svn-commits] JBL Code SVN: r34290 - in labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product: rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Thu Jul 29 07:37:41 EDT 2010
Author: kevin.conner at jboss.com
Date: 2010-07-29 07:37:40 -0400 (Thu, 29 Jul 2010)
New Revision: 34290
Modified:
labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/build.xml
labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPool.java
labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsSession.java
labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsXASession.java
Log:
Merged 2030
Modified: labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/build.xml 2010-07-29 11:33:38 UTC (rev 34289)
+++ labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/build.xml 2010-07-29 11:37:40 UTC (rev 34290)
@@ -37,7 +37,7 @@
<property name="org.jboss.esb.internal.jar.dest" location="build/jbossesb/lib"/>
<!-- JBoss ESB version -->
- <property name="version" value="4.3.0"/>
+ <property name="version" value="4.3.0_1081443"/>
<property name="esb.server.name" value="soa-server-${version}"/>
<property name="esbserver.dist.dir" value="${org.jboss.esb.internal.dest}/${esb.server.name}"/>
Modified: labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPool.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPool.java 2010-07-29 11:33:38 UTC (rev 34289)
+++ labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsConnectionPool.java 2010-07-29 11:37:40 UTC (rev 34290)
@@ -609,14 +609,8 @@
}
}
- synchronized JmsSessionPool findOwnerPool(final JmsSession session) {
- for(JmsSessionPool sessionPool : sessionPools) {
- if(sessionPool.isOwnerPool(session)) {
- return sessionPool;
- }
- }
-
- return null;
+ JmsSessionPool findOwnerPool(final JmsSession session) {
+ return session.getSessionPool() ;
}
static
@@ -682,25 +676,6 @@
inUseSessionsMap.put(Session.DUPS_OK_ACKNOWLEDGE, new ArrayList<JmsSession>() );
}
- private boolean isOwnerPool(JmsSession session) {
- if (isInList(session, freeSessionsMap.values())) {
- return true;
- } else if (isInList(session, inUseSessionsMap.values())) {
- return true;
- }
-
- return false;
- }
-
- private boolean isInList(JmsSession session, Collection<ArrayList<JmsSession>> sessionLists) {
- for(ArrayList<JmsSession> sessionList : sessionLists) {
- if(sessionList.contains(session)) {
- return true;
- }
- }
- return false;
- }
-
public synchronized void removeSessionPool() {
freeSessionsMap = null ;
inUseSessionsMap = null ;
@@ -815,9 +790,9 @@
final JmsSession session ;
if (transacted) {
- session = new JmsXASession(JmsConnectionPool.this, ((XAConnection)currentConnection).createXASession(), currentID);
+ session = new JmsXASession(JmsConnectionPool.this, JmsSessionPool.this, ((XAConnection)currentConnection).createXASession(), currentID);
} else {
- session = new JmsSession(JmsConnectionPool.this, currentConnection.createSession(transacted, acknowledgeMode), currentID);
+ session = new JmsSession(JmsConnectionPool.this, JmsSessionPool.this, currentConnection.createSession(transacted, acknowledgeMode), currentID);
}
return session ;
Modified: labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsSession.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsSession.java 2010-07-29 11:33:38 UTC (rev 34289)
+++ labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsSession.java 2010-07-29 11:37:40 UTC (rev 34290)
@@ -47,6 +47,8 @@
import javax.jms.Topic;
import javax.jms.TopicSubscriber;
+import org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.JmsSessionPool;
+
/**
* Wrapper for JMS session class, responsible for tracking resources and the pooling.
*/
@@ -55,8 +57,12 @@
/**
* The connection pool.
*/
- private final JmsConnectionPool pool ;
+ private final JmsConnectionPool connectionPool ;
/**
+ * The session pool.
+ */
+ private final JmsSessionPool sessionPool ;
+ /**
* The session delegate.
*/
private final Session session ;
@@ -88,18 +94,20 @@
/**
* Create the session wrapper.
- * @param pool The pool associated with this session.
+ * @param connectionPool The connection pool associated with this session.
+ * @param sessionPool The session pool associated with this session.
* @param session The session delegate.
* @param id The pool instance id.
* @param isJTA True if this tales part in a JTA transaction
* @throws JMSException
*/
- JmsSession(final JmsConnectionPool pool, final Session session, final long id)
+ JmsSession(final JmsConnectionPool connectionPool, final JmsSessionPool sessionPool, final Session session, final long id)
throws JMSException
{
- this.pool = pool ;
+ this.connectionPool = connectionPool ;
+ this.sessionPool = sessionPool ;
this.id = id ;
- this.session = (Session)getExceptionHandler(pool, Session.class, session) ;
+ this.session = (Session)getExceptionHandler(connectionPool, Session.class, session) ;
acknowledgeMode = session.getAcknowledgeMode() ;
// Workaround for JBESB-1873
if ("org.jboss.jms.client.JBossSession".equals(session.getClass().getName()))
@@ -300,7 +308,7 @@
}
final QueueBrowser result = getQueueBrowser(queueBrowser) ;
queueBrowserSet.add(result) ;
- return (QueueBrowser)getExceptionHandler(pool, QueueBrowser.class, result) ;
+ return (QueueBrowser)getExceptionHandler(connectionPool, QueueBrowser.class, result) ;
}
private synchronized MessageConsumer trackMessageConsumer(MessageConsumer messageConsumer)
@@ -313,7 +321,7 @@
}
final MessageConsumer result = getMessageConsumer(messageConsumer) ;
messageConsumerSet.add(result) ;
- return (MessageConsumer)getExceptionHandler(pool, MessageConsumer.class, result) ;
+ return (MessageConsumer)getExceptionHandler(connectionPool, MessageConsumer.class, result) ;
}
private synchronized TopicSubscriber trackTopicSubscriber(TopicSubscriber topicSubscriber)
@@ -326,7 +334,7 @@
}
final TopicSubscriber result = getTopicSubscriber(topicSubscriber) ;
messageConsumerSet.add(result) ;
- return (TopicSubscriber)getExceptionHandler(pool, TopicSubscriber.class, result) ;
+ return (TopicSubscriber)getExceptionHandler(connectionPool, TopicSubscriber.class, result) ;
}
private synchronized MessageProducer trackMessageProducer(MessageProducer messageProducer)
@@ -339,7 +347,7 @@
}
final MessageProducer result = getMessageProducer(messageProducer) ;
messageProducerSet.add(result) ;
- return (MessageProducer)getExceptionHandler(pool, MessageProducer.class, result) ;
+ return (MessageProducer)getExceptionHandler(connectionPool, MessageProducer.class, result) ;
}
synchronized void releaseResources()
@@ -411,6 +419,11 @@
{
}
+ protected JmsSessionPool getSessionPool()
+ {
+ return sessionPool ;
+ }
+
protected void setSuspect(final boolean suspect)
{
this.suspect = suspect ;
@@ -423,15 +436,15 @@
/**
* Wrap the object in an exception handler.
- * @param pool The pool associated with this session.
+ * @param connectionPool The connection pool associated with this session.
* @param instanceClass The interface type of the instance.
* @param instance The instance
* @return
*/
- protected Object getExceptionHandler(final JmsConnectionPool pool,
+ protected Object getExceptionHandler(final JmsConnectionPool connectionPool,
final Class<?> instanceClass, final Object instance)
{
- final InvocationHandler handler = new ExceptionHandler(pool, instance) ;
+ final InvocationHandler handler = new ExceptionHandler(connectionPool, instance) ;
return Proxy.newProxyInstance(getClass().getClassLoader(), new Class[] {instanceClass}, handler);
}
Modified: labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsXASession.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsXASession.java 2010-07-29 11:33:38 UTC (rev 34289)
+++ labs/jbossesb/workspace/platform/JBESB_4_4_SOA_4_3_CP2_1081443/product/rosetta/src/org/jboss/internal/soa/esb/rosetta/pooling/JmsXASession.java 2010-07-29 11:37:40 UTC (rev 34290)
@@ -36,6 +36,7 @@
import javax.transaction.Synchronization;
import javax.transaction.xa.XAResource;
+import org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPool.JmsSessionPool;
import org.jboss.soa.esb.common.TransactionStrategy;
import org.jboss.soa.esb.common.TransactionStrategyException;
@@ -47,7 +48,7 @@
/**
* The connection pool.
*/
- private final JmsConnectionPool pool ;
+ private final JmsConnectionPool connectionPool ;
/**
* The session delegate.
@@ -71,17 +72,18 @@
/**
* Create the session wrapper.
- * @param pool The current connection pool
+ * @param connectionPool The current connection pool
+ * @param sessionPool The current session pool
* @param session The session delegate.
* @param id The pool instance id.
* @throws JMSException
*/
- JmsXASession(final JmsConnectionPool pool, final XASession session, final long id)
+ JmsXASession(final JmsConnectionPool connectionPool, final JmsSessionPool sessionPool, final XASession session, final long id)
throws JMSException
{
- super(pool, session, id) ;
- this.pool = pool ;
- this.session = (XASession)getExceptionHandler(pool, XASession.class, session) ;
+ super(connectionPool, sessionPool, session, id) ;
+ this.connectionPool = connectionPool ;
+ this.session = (XASession)getExceptionHandler(connectionPool, XASession.class, session) ;
}
@Override
@@ -141,7 +143,7 @@
}
else
{
- pool.handleCloseSession(this) ;
+ connectionPool.handleCloseSession(this) ;
}
}
@@ -153,7 +155,7 @@
}
else
{
- pool.handleReleaseSession(this) ;
+ connectionPool.handleReleaseSession(this) ;
}
}
@@ -179,7 +181,7 @@
}
try
{
- pool.associateTransaction(this) ;
+ connectionPool.associateTransaction(this) ;
}
catch (final ConnectionException ce)
{
@@ -199,18 +201,18 @@
public synchronized void afterCompletion(final int result)
{
- pool.disassociateTransaction(this) ;
+ connectionPool.disassociateTransaction(this) ;
switch (cleanupAction)
{
case close:
if (result == Status.STATUS_COMMITTED)
{
- pool.handleCloseSession(this) ;
+ connectionPool.handleCloseSession(this) ;
break ;
}
// fall through
case release:
- pool.handleReleaseSession(this) ;
+ connectionPool.handleReleaseSession(this) ;
break ;
case none:
// Reference held by caller
More information about the jboss-svn-commits
mailing list