You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2010/08/12 15:10:57 UTC

svn commit: r984754 - /tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java

Author: antelder
Date: Thu Aug 12 13:10:56 2010
New Revision: 984754

URL: http://svn.apache.org/viewvc?rev=984754&view=rev
Log:
Validate that jndi lookup returns the expected jms destination type

Modified:
    tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java

Modified: tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java?rev=984754&r1=984753&r2=984754&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/host/DefaultJMSServiceListener.java Thu Aug 12 13:10:56 2010
@@ -214,6 +214,23 @@ public class DefaultJMSServiceListener i
                 + " listener");
         }
 
+        // Make sure its the expected type (queue or topic)
+        String type = (destination instanceof Queue) ? JMSBindingConstants.DESTINATION_TYPE_QUEUE : JMSBindingConstants.DESTINATION_TYPE_TOPIC;
+        if ("jndi".equals(jmsBinding.getDestinationType())) {
+            jmsBinding.setDestinationType(type);            
+        } else {
+            if (!type.equals(jmsBinding.getDestinationType())) {
+                throw new JMSBindingException("JMS Destination " + jmsBinding.getDestinationName()
+                                              + " expecting type of " 
+                                              + jmsBinding.getDestinationType()
+                                              + " but found "
+                                              + type
+                                              + " while registering service "
+                                              + serviceName
+                                              + " listener");
+            }
+        }
+
         return destination;
     }