You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by jg...@apache.org on 2010/07/21 18:37:38 UTC
svn commit: r966303 -
/servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java
Author: jgoodyear
Date: Wed Jul 21 16:37:37 2010
New Revision: 966303
URL: http://svn.apache.org/viewvc?rev=966303&view=rev
Log:
[SM-1964] JMS Flow only uses one connection even with a PooledConnectionFactory. First patch was incomplete, this updates pool with one connection case
Modified:
servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java
Modified: servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java
URL: http://svn.apache.org/viewvc/servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java?rev=966303&r1=966302&r2=966303&view=diff
==============================================================================
--- servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java (original)
+++ servicemix/smx3/trunk/core/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/AbstractJMSFlow.java Wed Jul 21 16:37:37 2010
@@ -473,7 +473,9 @@ public abstract class AbstractJMSFlow ex
Connection cnx = connection;
// with a PooledConnectionFactory get a new connection from the pool
- if (connectionFactory instanceof PooledConnectionFactory) {
+ boolean useConnectionFromPool = (connectionFactory instanceof PooledConnectionFactory)
+ && ((PooledConnectionFactory)connectionFactory).getMaxConnections() > 1;
+ if (useConnectionFromPool) {
connectionFactory.createConnection();
cnx.start();
}
@@ -491,7 +493,7 @@ public abstract class AbstractJMSFlow ex
queueProducer.send(msg);
} finally {
inboundSession.close();
- if (connectionFactory instanceof PooledConnectionFactory) {
+ if (useConnectionFromPool) {
// return connection to the pool
cnx.stop();
cnx.close();