summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime')
-rw-r--r--sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java16
-rw-r--r--sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java25
-rw-r--r--sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java9
-rw-r--r--sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java25
4 files changed, 27 insertions, 48 deletions
diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java
index 33e73a69ef..ba1002fab2 100644
--- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java
+++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java
@@ -23,7 +23,6 @@ import java.util.HashMap;
import javax.jms.BytesMessage;
import javax.jms.JMSException;
import javax.jms.Session;
-import javax.xml.namespace.QName;
import org.apache.tuscany.sca.binding.jms.JMSBinding;
import org.apache.tuscany.sca.binding.jms.JMSBindingConstants;
@@ -31,17 +30,17 @@ import org.apache.tuscany.sca.binding.jms.JMSBindingException;
import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
import org.apache.tuscany.sca.binding.jms.provider.DefaultMessageProcessor;
import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelper;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelperFactory;
import org.apache.tuscany.sca.binding.jms.wireformat.WireFormatJMSDefault;
import org.apache.tuscany.sca.core.ExtensionPointRegistry;
import org.apache.tuscany.sca.core.invocation.InterceptorAsyncImpl;
import org.apache.tuscany.sca.interfacedef.DataType;
import org.apache.tuscany.sca.interfacedef.Operation;
import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.Interceptor;
import org.apache.tuscany.sca.invocation.Invoker;
import org.apache.tuscany.sca.invocation.Message;
import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
-import org.w3c.dom.Node;
/**
*
@@ -56,10 +55,11 @@ public class WireFormatJMSDefaultReferenceInterceptor extends InterceptorAsyncIm
private DefaultMessageProcessor requestMessageProcessor;
private DefaultMessageProcessor responseMessageProcessor;
private HashMap<String, Boolean> inputWrapperMap;
- private HashMap<String, Node> outputWrapperMap;
+ private HashMap<String, Object> outputWrapperMap;
+ private XMLHelper xmlhelper;
public WireFormatJMSDefaultReferenceInterceptor(ExtensionPointRegistry registry, JMSResourceFactory jmsResourceFactory, RuntimeEndpointReference endpointReference, HashMap<String, Boolean> inputWrapperMap,
- HashMap<String, Node> outputWrapperMap) {
+ HashMap<String, Object> outputWrapperMap) {
super();
this.jmsBinding = (JMSBinding) endpointReference.getBinding();
this.endpointReference = endpointReference;
@@ -70,6 +70,7 @@ public class WireFormatJMSDefaultReferenceInterceptor extends InterceptorAsyncIm
this.responseMessageProcessor = new DefaultMessageProcessor(jmsBinding, registry);
this.inputWrapperMap = inputWrapperMap;
this.outputWrapperMap = outputWrapperMap;
+ this.xmlhelper = XMLHelperFactory.createXMLHelper(registry);
}
public Message invoke(Message msg) {
@@ -127,7 +128,7 @@ public class WireFormatJMSDefaultReferenceInterceptor extends InterceptorAsyncIm
msg.setBody(jmsMsg);
} else {
- Node wrapper = null;
+ Object wrapper = null;
// if we have a fault no need to wrap the response
try {
if (!jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
@@ -150,8 +151,7 @@ public class WireFormatJMSDefaultReferenceInterceptor extends InterceptorAsyncIm
try {
if (jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
FaultException e = new FaultException("remote exception", response);
- Node om = ((Node)response).getFirstChild();
- e.setFaultName(new QName(om.getNamespaceURI(), om.getLocalName()));
+ xmlhelper.setFaultName(e, response);
msg.setFaultBody(e);
}
} catch (JMSException e) {
diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java
index 127680c283..67ee7309e2 100644
--- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java
+++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java
@@ -22,18 +22,16 @@ package org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime;
import java.util.HashMap;
import java.util.List;
-import javax.xml.namespace.QName;
-
import org.apache.tuscany.sca.assembly.ComponentReference;
import org.apache.tuscany.sca.binding.jms.JMSBinding;
import org.apache.tuscany.sca.binding.jms.JMSBindingConstants;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelper;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelperFactory;
import org.apache.tuscany.sca.binding.jms.wireformat.WireFormatJMSDefault;
import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.common.xml.dom.DOMHelper;
import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.databinding.xml.DOMDataBinding;
import org.apache.tuscany.sca.interfacedef.DataType;
import org.apache.tuscany.sca.interfacedef.InterfaceContract;
import org.apache.tuscany.sca.interfacedef.Operation;
@@ -42,9 +40,6 @@ import org.apache.tuscany.sca.invocation.Interceptor;
import org.apache.tuscany.sca.invocation.Phase;
import org.apache.tuscany.sca.provider.WireFormatProvider;
import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
/**
* @version $Rev$ $Date$
@@ -55,9 +50,9 @@ public class WireFormatJMSDefaultReferenceProvider implements WireFormatProvider
private ComponentReference reference;
private JMSBinding binding;
private InterfaceContract interfaceContract;
- private DOMHelper domHelper;
+ private XMLHelper xmlHelper;
private HashMap<String, Boolean> inputWrapperMap;
- private HashMap<String, Node> outputWrapperMap;
+ private HashMap<String, Object> outputWrapperMap;
public WireFormatJMSDefaultReferenceProvider(ExtensionPointRegistry registry, RuntimeEndpointReference endpointReference) {
super();
@@ -65,9 +60,9 @@ public class WireFormatJMSDefaultReferenceProvider implements WireFormatProvider
this.endpointReference = endpointReference;
this.binding = (JMSBinding) endpointReference.getBinding();
- this.domHelper = DOMHelper.getInstance(registry);
+ this.xmlHelper = XMLHelperFactory.createXMLHelper(registry);
this.inputWrapperMap = new HashMap<String, Boolean>();
- this.outputWrapperMap = new HashMap<String, Node>();
+ this.outputWrapperMap = new HashMap<String, Object>();
// configure the reference based on this wire format
@@ -101,7 +96,7 @@ public class WireFormatJMSDefaultReferenceProvider implements WireFormatProvider
WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
BindingWSDLGenerator.generateWSDL(endpointReference.getComponent(), reference, wsBinding, registry, null);
interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(DOMDataBinding.NAME);
+ interfaceContract.getInterface().resetDataBinding(XMLHelperFactory.createXMLHelper(registry).getDataBindingName());
List<Operation> wsdlOpList = interfaceContract.getInterface().getOperations();
@@ -140,11 +135,7 @@ public class WireFormatJMSDefaultReferenceProvider implements WireFormatProvider
// we only need to know what the wrapper is on the deserialization
// might need to change this when there input/output wrapper style is different
ElementInfo ei = op.getWrapper().getOutputWrapperElement();
- String namespace = ei.getQName().getNamespaceURI();
- String opName = ei.getQName().getLocalPart();
- Document document = domHelper.newDocument();
- Element wrapper = DOMHelper.createElement(document, new QName(namespace, opName));
- this.outputWrapperMap.put(name, wrapper);
+ this.outputWrapperMap.put(name, xmlHelper.createWrapper(ei.getQName()));
}
}
} else {
diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java
index b66dd0154f..3427155bf0 100644
--- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java
+++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java
@@ -36,11 +36,8 @@ import org.apache.tuscany.sca.core.ExtensionPointRegistry;
import org.apache.tuscany.sca.core.invocation.InterceptorAsyncImpl;
import org.apache.tuscany.sca.interfacedef.DataType;
import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
import org.apache.tuscany.sca.invocation.Message;
import org.apache.tuscany.sca.runtime.RuntimeEndpoint;
-import org.w3c.dom.Node;
/**
* Policy handler to handle PolicySet related to Logging with the QName {http://tuscany.apache.org/xmlns/sca/1.1/impl/java}LoggingPolicy
@@ -53,10 +50,10 @@ public class WireFormatJMSDefaultServiceInterceptor extends InterceptorAsyncImpl
private JMSBinding jmsBinding;
private DefaultMessageProcessor requestMessageProcessor;
private DefaultMessageProcessor responseMessageProcessor;
- private HashMap<String, Node> inputWrapperMap;
+ private HashMap<String, Object> inputWrapperMap;
private HashMap<String, Boolean> outputWrapperMap;
- public WireFormatJMSDefaultServiceInterceptor(ExtensionPointRegistry registry, JMSResourceFactory jmsResourceFactory, RuntimeEndpoint endpoint, HashMap<String, Node> inputWrapperMap,
+ public WireFormatJMSDefaultServiceInterceptor(ExtensionPointRegistry registry, JMSResourceFactory jmsResourceFactory, RuntimeEndpoint endpoint, HashMap<String, Object> inputWrapperMap,
HashMap<String, Boolean> outputWrapperMap) {
super();
this.jmsBinding = (JMSBinding) endpoint.getBinding();
@@ -115,7 +112,7 @@ public class WireFormatJMSDefaultServiceInterceptor extends InterceptorAsyncImpl
} else {
// If there is only one arg we must add a wrapper if the operation is wrapper style
- Node wrapper = this.inputWrapperMap.get(msg.getOperation().getName());
+ Object wrapper = this.inputWrapperMap.get(msg.getOperation().getName());
Object requestPayload;
if (jmsMsg instanceof BytesMessage) {
diff --git a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java
index 3541666007..e24be41ebf 100644
--- a/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java
+++ b/sca-java-2.x/trunk/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java
@@ -22,19 +22,17 @@ package org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime;
import java.util.HashMap;
import java.util.List;
-import javax.xml.namespace.QName;
-
import org.apache.tuscany.sca.assembly.ComponentService;
import org.apache.tuscany.sca.binding.jms.JMSBinding;
import org.apache.tuscany.sca.binding.jms.JMSBindingConstants;
import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelper;
+import org.apache.tuscany.sca.binding.jms.provider.xml.XMLHelperFactory;
import org.apache.tuscany.sca.binding.jms.wireformat.WireFormatJMSDefault;
import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.common.xml.dom.DOMHelper;
import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.databinding.xml.DOMDataBinding;
import org.apache.tuscany.sca.interfacedef.DataType;
import org.apache.tuscany.sca.interfacedef.InterfaceContract;
import org.apache.tuscany.sca.interfacedef.Operation;
@@ -43,9 +41,6 @@ import org.apache.tuscany.sca.invocation.Interceptor;
import org.apache.tuscany.sca.invocation.Phase;
import org.apache.tuscany.sca.provider.WireFormatProvider;
import org.apache.tuscany.sca.runtime.RuntimeEndpoint;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
/**
* @version $Rev$ $Date$
@@ -57,8 +52,8 @@ public class WireFormatJMSDefaultServiceProvider implements WireFormatProvider {
private JMSBinding binding;
private JMSResourceFactory jmsResourceFactory;
private InterfaceContract interfaceContract;
- private DOMHelper domHelper;
- private HashMap<String, Node> inputWrapperMap;
+ private XMLHelper<?> xmlHelper;
+ private HashMap<String, Object> inputWrapperMap;
private HashMap<String, Boolean> outputWrapperMap;
public WireFormatJMSDefaultServiceProvider(ExtensionPointRegistry registry, RuntimeEndpoint endpoint, JMSResourceFactory jmsResourceFactory) {
@@ -69,8 +64,8 @@ public class WireFormatJMSDefaultServiceProvider implements WireFormatProvider {
this.service = endpoint.getService();
this.jmsResourceFactory = jmsResourceFactory;
- this.domHelper = DOMHelper.getInstance(registry);
- this.inputWrapperMap = new HashMap<String, Node>();
+ this.xmlHelper = XMLHelperFactory.createXMLHelper(registry);
+ this.inputWrapperMap = new HashMap<String, Object>();
this.outputWrapperMap = new HashMap<String, Boolean>();
// configure the service based on this wire format
@@ -98,7 +93,7 @@ public class WireFormatJMSDefaultServiceProvider implements WireFormatProvider {
WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
BindingWSDLGenerator.generateWSDL(endpoint.getComponent(), service, wsBinding, registry, null);
interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(DOMDataBinding.NAME);
+ interfaceContract.getInterface().resetDataBinding(XMLHelperFactory.createXMLHelper(registry).getDataBindingName());
List<Operation> wsdlOpList = interfaceContract.getInterface().getOperations();
@@ -125,11 +120,7 @@ public class WireFormatJMSDefaultServiceProvider implements WireFormatProvider {
// we only need to know what the wrapper is on the deserialization
// might need to change this when the input/output wrapper style is different
ElementInfo ei = op.getWrapper().getInputWrapperElement();
- String namespace = ei.getQName().getNamespaceURI();
- String opName = ei.getQName().getLocalPart();
- Document document = domHelper.newDocument();
- Element wrapper = DOMHelper.createElement(document, new QName(namespace, opName));
- this.inputWrapperMap.put(name, wrapper);
+ this.inputWrapperMap.put(name, xmlHelper.createWrapper(ei.getQName()));
}
}