You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by gn...@apache.org on 2006/03/23 17:16:41 UTC
svn commit: r388198 - in
/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow:
jca/JCAFlow.java jms/JMSFlow.java
Author: gnodet
Date: Thu Mar 23 08:16:40 2006
New Revision: 388198
URL: http://svn.apache.org/viewcvs?rev=388198&view=rev
Log:
SM-366: jms and jca flow should not use the same queues
Also improve the jca flow to auto-detect a TransactionContextManager from the spring context (if any)
Modified:
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jca/JCAFlow.java
incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/JMSFlow.java
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jca/JCAFlow.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jca/JCAFlow.java?rev=388198&r1=388197&r2=388198&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jca/JCAFlow.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jca/JCAFlow.java Thu Mar 23 08:16:40 2006
@@ -61,6 +61,7 @@
import org.apache.geronimo.connector.outbound.connectionmanagerconfig.XATransactions;
import org.apache.geronimo.connector.work.GeronimoWorkManager;
import org.apache.geronimo.transaction.context.TransactionContextManager;
+import org.apache.servicemix.jbi.container.SpringJBIContainer;
import org.apache.servicemix.jbi.event.EndpointAdapter;
import org.apache.servicemix.jbi.event.EndpointEvent;
import org.apache.servicemix.jbi.event.EndpointListener;
@@ -72,6 +73,7 @@
import org.jencks.JCAConnector;
import org.jencks.SingletonEndpointFactory;
import org.jencks.factory.ConnectionManagerFactoryBean;
+import org.springframework.context.ApplicationContext;
import edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap;
import edu.emory.mathcs.backport.java.util.concurrent.CopyOnWriteArraySet;
@@ -85,7 +87,7 @@
public class JCAFlow extends AbstractFlow implements MessageListener {
private static final Log log = LogFactory.getLog(JCAFlow.class);
- private static final String INBOUND_PREFIX = "org.apache.servicemix.inbound.";
+ private static final String INBOUND_PREFIX = "org.apache.servicemix.jca.";
private String jmsURL = "tcp://localhost:61616";
private String userName;
private String password;
@@ -573,6 +575,17 @@
}
public TransactionContextManager getTransactionContextManager() {
+ if (transactionContextManager == null) {
+ if (broker != null && broker.getContainer() instanceof SpringJBIContainer) {
+ ApplicationContext applicationContext = ((SpringJBIContainer) broker.getContainer()).getApplicationContext();
+ if (applicationContext != null) {
+ Map map = applicationContext.getBeansOfType(TransactionContextManager.class);
+ if( map.size() == 1) {
+ transactionContextManager = (TransactionContextManager) map.values().iterator().next();
+ }
+ }
+ }
+ }
return transactionContextManager;
}
Modified: incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/JMSFlow.java
URL: http://svn.apache.org/viewcvs/incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/JMSFlow.java?rev=388198&r1=388197&r2=388198&view=diff
==============================================================================
--- incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/JMSFlow.java (original)
+++ incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/nmr/flow/jms/JMSFlow.java Thu Mar 23 08:16:40 2006
@@ -69,7 +69,7 @@
private static final Log log = LogFactory.getLog(JMSFlow.class);
- private static final String INBOUND_PREFIX = "org.apache.servicemix.inbound.";
+ private static final String INBOUND_PREFIX = "org.apache.servicemix.jms.";
private String jmsURL = "peer://org.apache.servicemix?persistent=false";