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 2008/09/02 10:20:58 UTC

svn commit: r691145 - in /tuscany/java/sca/modules/binding-jms-runtime/src: main/java/org/apache/tuscany/sca/binding/jms/provider/ test/java/org/apache/tuscany/sca/binding/jms/ test/java/org/apache/tuscany/sca/binding/jms/provider/

Author: antelder
Date: Tue Sep  2 01:20:57 2008
New Revision: 691145

URL: http://svn.apache.org/viewvc?rev=691145&view=rev
Log:
Change so the target binding is passed in to the JMS service listener. (used by the jms based sca binding so it can get the tagert uri)

Modified:
    tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingListener.java
    tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java
    tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java
    tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
    tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java
    tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceQueueCreateModeTestCaseFIXME.java

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingListener.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingListener.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingListener.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingListener.java Tue Sep  2 01:20:57 2008
@@ -33,6 +33,7 @@
 import javax.jms.Topic;
 import javax.naming.NamingException;
 
+import org.apache.tuscany.sca.assembly.Binding;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
@@ -54,6 +55,7 @@
 
     private static final String ON_MESSAGE_METHOD_NAME = "onMessage";
     private JMSBinding jmsBinding;
+    private Binding targetBinding;
     private JMSResourceFactory jmsResourceFactory;
     private RuntimeComponentService service;
     private JMSMessageProcessor requestMessageProcessor;
@@ -61,10 +63,11 @@
     private String correlationScheme;
     private List<Operation> serviceOperations;
 
-    public JMSBindingListener(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeComponentService service) throws NamingException {
+    public JMSBindingListener(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeComponentService service, Binding targetBinding) throws NamingException {
         this.jmsBinding = jmsBinding;
         this.jmsResourceFactory = jmsResourceFactory;
         this.service = service;
+        this.targetBinding = targetBinding;
         requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
         responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
         correlationScheme = jmsBinding.getCorrelationScheme();
@@ -107,7 +110,7 @@
 
         setHeaderProperties(requestJMSMsg, tuscanyMsg, operation);
 
-        return service.getRuntimeWire(jmsBinding).invoke(operation, tuscanyMsg);
+        return service.getRuntimeWire(targetBinding).invoke(operation, tuscanyMsg);
     }
 
     protected Operation getTargetOperation(String operationName) {

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java Tue Sep  2 01:20:57 2008
@@ -49,7 +49,7 @@
     }
 
     public ServiceBindingProvider createServiceBindingProvider(RuntimeComponent component, RuntimeComponentService service, JMSBinding binding) {
-        return new JMSBindingServiceBindingProvider(component, service, binding, workScheduler);
+        return new JMSBindingServiceBindingProvider(component, service, binding, binding, workScheduler);
     }
 
     public Class<JMSBinding> getModelType() {

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java Tue Sep  2 01:20:57 2008
@@ -31,6 +31,7 @@
 import javax.jms.Topic;
 import javax.naming.NamingException;
 
+import org.apache.tuscany.sca.assembly.Binding;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
 import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
@@ -50,6 +51,7 @@
     private static final Logger logger = Logger.getLogger(JMSBindingServiceBindingProvider.class.getName());
 
     private RuntimeComponentService service;
+    private Binding targetBinding;
     private JMSBinding jmsBinding;
     private JMSResourceFactory jmsResourceFactory;
     private MessageConsumer consumer;
@@ -58,10 +60,11 @@
 
     private Destination destination;
 
-    public JMSBindingServiceBindingProvider(RuntimeComponent component, RuntimeComponentService service, JMSBinding binding, WorkScheduler workScheduler) {
+    public JMSBindingServiceBindingProvider(RuntimeComponent component, RuntimeComponentService service, Binding targetBinding, JMSBinding binding, WorkScheduler workScheduler) {
         this.service = service;
         this.jmsBinding = binding;
         this.workScheduler = workScheduler;
+        this.targetBinding = targetBinding;
 
         jmsResourceFactory = new JMSResourceFactory(binding.getConnectionFactoryName(), binding.getInitialContextFactoryName(), binding.getJndiURL());
 
@@ -139,7 +142,7 @@
             consumer = session.createConsumer(destination);
         }
 
-        final JMSBindingListener listener = new JMSBindingListener(jmsBinding, jmsResourceFactory, service);
+        final JMSBindingListener listener = new JMSBindingListener(jmsBinding, jmsResourceFactory, service, targetBinding);
         try {
 
             consumer.setMessageListener(listener);

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java Tue Sep  2 01:20:57 2008
@@ -43,7 +43,12 @@
     protected Object[] extractPayload(Message msg) {
         try {
 
-            return new Object[] {((ObjectMessage)msg).getObject()};
+            Object o = ((ObjectMessage)msg).getObject();
+            if (o != null && o.getClass().isArray()) {
+                return (Object[])o;
+            } else {
+                return new Object[] { o};
+            }
 
         } catch (JMSException e) {
             throw new JMSBindingException(e);

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java Tue Sep  2 01:20:57 2008
@@ -204,7 +204,7 @@
             .andReturn(operationReturnValue);
 
         // Create the JMS Binding Listener
-        final JMSBindingListener bindingListener = new JMSBindingListener(jmsBinding, jmsResourceFactory, service);
+        final JMSBindingListener bindingListener = new JMSBindingListener(jmsBinding, jmsResourceFactory, service, null);
 
         // Simulate a message
         final TextMessage requestJMSMsg = EasyMock.createStrictMock(TextMessage.class);

Modified: tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceQueueCreateModeTestCaseFIXME.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceQueueCreateModeTestCaseFIXME.java?rev=691145&r1=691144&r2=691145&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceQueueCreateModeTestCaseFIXME.java (original)
+++ tuscany/java/sca/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceQueueCreateModeTestCaseFIXME.java Tue Sep  2 01:20:57 2008
@@ -141,7 +141,7 @@
         // Try and create the JMS Binding Service for the JMS Binding
         try {
             JMSBindingServiceBindingProvider jmsService =
-                new JMSBindingServiceBindingProvider(null, service, jmsBinding, null);
+                new JMSBindingServiceBindingProvider(null, service, null, jmsBinding, null);
             jmsService.start();
 
             // Check whether we were expecting an exception