summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding
diff options
context:
space:
mode:
Diffstat (limited to 'branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding')
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java2
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java7
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java9
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java4
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java8
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java14
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java4
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java6
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java11
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java6
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java4
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java6
-rw-r--r--branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java2
13 files changed, 44 insertions, 39 deletions
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
index e229cc9043..c2a9a61257 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
@@ -116,7 +116,7 @@ public abstract class AbstractMessageProcessor implements JMSMessageProcessor {
}
}
- protected abstract Object[] extractPayload(Message msg);
+ protected abstract Object extractPayload(Message msg);
protected abstract Message createJMSMessage(Session session, Object o);
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java
index 44b2e3b990..047743654f 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java
@@ -39,7 +39,7 @@ public class BytesMessageProcessor extends AbstractMessageProcessor {
}
@Override
- protected Object[] extractPayload(Message msg) {
+ protected Object extractPayload(Message msg) {
try {
if (!(msg instanceof BytesMessage)) {
@@ -49,7 +49,7 @@ public class BytesMessageProcessor extends AbstractMessageProcessor {
long noOfBytes = ((BytesMessage)msg).getBodyLength();
byte [] bytes = new byte[(int)noOfBytes];
((BytesMessage)msg).readBytes(bytes);
- return new Object[] {bytes};
+ return bytes;
} catch (JMSException e) {
throw new JMSBindingException(e);
@@ -63,8 +63,7 @@ public class BytesMessageProcessor extends AbstractMessageProcessor {
// TODO - an experiment. How to enforce a single
// byte array parameter
BytesMessage message = session.createBytesMessage();
- byte [] bytes = (byte[])((Object[])o)[0];
- message.writeBytes(bytes);
+ message.writeBytes((byte[])o);
return message;
} catch (JMSException e) {
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
index e9ae3cecaa..4e07e4eab8 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
@@ -40,15 +40,10 @@ public class ObjectMessageProcessor extends AbstractMessageProcessor {
}
@Override
- protected Object[] extractPayload(Message msg) {
+ protected Object extractPayload(Message msg) {
try {
- Object o = ((ObjectMessage)msg).getObject();
- if (o != null && o.getClass().isArray()) {
- return (Object[])o;
- } else {
- return new Object[] { o};
- }
+ return ((ObjectMessage)msg).getObject();
} catch (JMSException e) {
throw new JMSBindingException(e);
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java
index d8490c6223..cf22e400b1 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java
@@ -38,14 +38,14 @@ public class TextMessageProcessor extends AbstractMessageProcessor {
}
@Override
- protected Object[] extractPayload(Message msg) {
+ protected Object extractPayload(Message msg) {
try {
if (!(msg instanceof TextMessage)) {
throw new IllegalStateException("expecting JMS TextMessage: " + msg);
}
- return new Object[] {((TextMessage)msg).getText()};
+ return ((TextMessage)msg).getText();
} catch (JMSException e) {
throw new JMSBindingException(e);
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java
index 88dd41cc57..3a4ba7b809 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java
@@ -45,17 +45,17 @@ public class XMLTextMessageProcessor extends AbstractMessageProcessor {
}
@Override
- protected Object[] extractPayload(Message msg) {
+ protected Object extractPayload(Message msg) {
try {
String xml = ((TextMessage)msg).getText();
- Object[] os;
+ Object os;
if (xml != null) {
XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(xml));
StAXOMBuilder builder = new StAXOMBuilder(reader);
- os = new Object[] {builder.getDocumentElement()};
+ os = builder.getDocumentElement();
} else {
- os = new Object[] {};
+ os = null;
}
return os;
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java
index f0e835e916..c1ed139a84 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java
@@ -78,7 +78,13 @@ public class WireFormatJMSBytesReferenceInterceptor implements Interceptor {
JMSBindingContext context = msg.getBindingContext();
Session session = context.getJmsSession();
- javax.jms.Message requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
+ Object[] requestParams = msg.getBody();
+ javax.jms.Message requestMsg = null;
+ if (requestParams != null && requestParams.length > 0 ){
+ requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, requestParams[0]);
+ } else {
+ requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, null);
+ }
msg.setBody(requestMsg);
requestMsg.setJMSReplyTo(context.getReplyToDestination());
@@ -91,9 +97,9 @@ public class WireFormatJMSBytesReferenceInterceptor implements Interceptor {
public Message invokeResponse(Message msg) {
if (msg.getBody() != null){
- Object[] response = (Object[])responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
- if (response != null && response.length > 0){
- msg.setBody(response[0]);
+ Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
+ if (response != null){
+ msg.setBody(response);
} else {
msg.setBody(null);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java
index 5a41a0f62f..38d5a40012 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java
@@ -78,7 +78,7 @@ public class WireFormatJMSBytesServiceInterceptor implements Interceptor {
javax.jms.Message jmsMsg = context.getJmsMsg();
Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(requestPayload);
+ msg.setBody(new Object[]{requestPayload});
return msg;
}
@@ -92,7 +92,7 @@ public class WireFormatJMSBytesServiceInterceptor implements Interceptor {
if (msg.isFault()) {
responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
} else {
- Object[] response = {msg.getBody()};
+ Object response = msg.getBody();
responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java
index e0df4f2296..5b56de5574 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java
@@ -91,9 +91,9 @@ public class WireFormatJMSObjectReferenceInterceptor implements Interceptor {
public Message invokeResponse(Message msg) {
if (msg.getBody() != null){
- Object[] response = (Object[])responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
- if (response != null && response.length > 0){
- msg.setBody(response[0]);
+ Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
+ if (response != null){
+ msg.setBody(response);
} else {
msg.setBody(null);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java
index b06886fae0..bb3c036287 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java
@@ -78,8 +78,13 @@ public class WireFormatJMSObjectServiceInterceptor implements Interceptor {
javax.jms.Message jmsMsg = context.getJmsMsg();
Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(requestPayload);
-
+
+ if (requestPayload != null && requestPayload.getClass().isArray()) {
+ msg.setBody(requestPayload);
+ } else {
+ msg.setBody(new Object[] {requestPayload});
+ }
+
return msg;
}
@@ -92,7 +97,7 @@ public class WireFormatJMSObjectServiceInterceptor implements Interceptor {
if (msg.isFault()) {
responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
} else {
- Object[] response = {msg.getBody()};
+ Object response = msg.getBody();
responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java
index fab51a08f0..fc797bf32d 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java
@@ -98,9 +98,9 @@ public class WireFormatJMSTextReferenceInterceptor implements Interceptor {
public Message invokeResponse(Message msg) {
if (msg.getBody() != null){
- Object[] response = (Object[])responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
- if (response != null && response.length > 0){
- msg.setBody(response[0]);
+ Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
+ if (response != null ){
+ msg.setBody(response);
} else {
msg.setBody(null);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java
index 43e0d3e772..53d41066e8 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java
@@ -78,7 +78,7 @@ public class WireFormatJMSTextServiceInterceptor implements Interceptor {
javax.jms.Message jmsMsg = context.getJmsMsg();
Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(requestPayload);
+ msg.setBody(new Object[]{requestPayload});
return msg;
}
@@ -92,7 +92,7 @@ public class WireFormatJMSTextServiceInterceptor implements Interceptor {
if (msg.isFault()) {
responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
} else {
- Object[] response = {msg.getBody()};
+ Object response = msg.getBody();
responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
index d0f10b8ba7..c40429d836 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
@@ -104,9 +104,9 @@ public class WireFormatJMSTextXMLReferenceInterceptor implements Interceptor {
public Message invokeResponse(Message msg) {
if (msg.getBody() != null){
- Object[] response = (Object[])responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
- if (response != null && response.length > 0){
- msg.setBody(response[0]);
+ Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
+ if (response != null ){
+ msg.setBody(response);
} else {
msg.setBody(null);
}
diff --git a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
index 778062d945..baa0d2ee23 100644
--- a/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
+++ b/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
@@ -83,7 +83,7 @@ public class WireFormatJMSTextXMLServiceInterceptor implements Interceptor {
msg.setBody(new Object[]{jmsMsg});
} else {
Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(requestPayload);
+ msg.setBody(new Object[]{requestPayload});
}
return msg;