Title: [724] trunk/core/src/main/java/org/servicemix/jbi/nmr/flow/jms/JMSFlow.java: always let ActiveMQ do the routing
Revision
724
Author
rajdavies
Date
2005-11-02 06:32:59 -0500 (Wed, 02 Nov 2005)

Log Message

always let ActiveMQ do the routing

Modified Paths


Diff

Modified: trunk/core/src/main/java/org/servicemix/jbi/nmr/flow/jms/JMSFlow.java (723 => 724)

--- trunk/core/src/main/java/org/servicemix/jbi/nmr/flow/jms/JMSFlow.java	2005-11-02 11:27:19 UTC (rev 723)
+++ trunk/core/src/main/java/org/servicemix/jbi/nmr/flow/jms/JMSFlow.java	2005-11-02 11:32:59 UTC (rev 724)
@@ -336,29 +336,23 @@
      * @param packet
      * @throws MessagingException
      */
-    public void doRouting(MessageExchangeImpl me) throws MessagingException {
-        ComponentNameSpace id = me.getRole() == Role.PROVIDER ? me.getDestinationId() : me.getSourceId();
-        ComponentConnector cc = broker.getRegistry().getLoadBalancedComponentConnector(id);
-        if (cc != null) {
-            if (cc.isLocal()) {
-                super.doRouting(me);
+    public void doRouting(MessageExchangeImpl me) throws MessagingException{
+        ComponentNameSpace id=me.getRole()==Role.PROVIDER?me.getDestinationId():me.getSourceId();
+        ComponentConnector cc=broker.getRegistry().getComponentConnector(id);
+        if(cc!=null){
+            // let ActiveMQ do the routing ...
+            try{
+                String componentName=cc.getComponentNameSpace().getName();
+                Queue queue=inboundSession.createQueue(INBOUND_PREFIX+componentName);
+                ObjectMessage msg=inboundSession.createObjectMessage(me);
+                queueProducer.send(queue,msg);
+            }catch(JMSException e){
+                log.error("Failed to send exchange: "+me+" internal JMS Network",e);
+                throw new MessagingException(e);
             }
-            else {
-                try {
-                    String componentName = cc.getComponentNameSpace().getName();
-                    Queue queue = inboundSession.createQueue(INBOUND_PREFIX + componentName);
-                    ObjectMessage msg = inboundSession.createObjectMessage(me);
-                    queueProducer.send(queue, msg);
-                }
-                catch (JMSException e) {
-                    log.error("Failed to send exchange: " + me + " internal JMS Network", e);
-                    throw new MessagingException(e);
-                }
-            }
+        }else{
+            throw new MessagingException("No component with id ("+id+") - Couldn't route MessageExchange "+me);
         }
-        else {
-            throw new MessagingException("No component with id (" + id + ") - Couldn't route MessageExchange " + me);
-        }
     }
 
     /**

Reply via email to