summaryrefslogtreecommitdiffstats
path: root/branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca
diff options
context:
space:
mode:
authorjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2008-09-29 01:20:26 +0000
committerjsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68>2008-09-29 01:20:26 +0000
commit18d4d2f06de5efa5bc55974e3b506f53a3da6585 (patch)
treec8f8f3abc42f2a1ca5e2a0b0e23b44c44be6b088 /branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca
parentaf8efbe0b8eba5d5cb28f27853eaa80d00d83828 (diff)
Pulled from trunk. Clone interface to configure the databinding.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@699950 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca')
-rw-r--r--branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/xml/XQueryIntrospector.java29
1 files changed, 25 insertions, 4 deletions
diff --git a/branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/xml/XQueryIntrospector.java b/branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/xml/XQueryIntrospector.java
index 6f18e518bd..d1e74dd40d 100644
--- a/branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/xml/XQueryIntrospector.java
+++ b/branches/sca-equinox/modules/implementation-xquery/src/main/java/org/apache/tuscany/sca/implementation/xquery/xml/XQueryIntrospector.java
@@ -217,11 +217,21 @@ public class XQueryIntrospector {
service.setName(name);
// Set the call interface and, if present, the callback interface
- JavaInterface callInterface = javaFactory.createJavaInterface(interfaze);
+ JavaInterface callInterface = null;
+ try {
+ callInterface = (JavaInterface) javaFactory.createJavaInterface(interfaze).clone();
+ } catch (CloneNotSupportedException e) {
+ // Ignore
+ }
//setDataBindingForInterface(callInterface, DataObject.class.getName());
service.getInterfaceContract().setInterface(callInterface);
if (callInterface.getCallbackClass() != null) {
- JavaInterface callbackInterface = javaFactory.createJavaInterface(callInterface.getCallbackClass());
+ JavaInterface callbackInterface = null;
+ try {
+ callbackInterface = (JavaInterface) javaFactory.createJavaInterface(callInterface.getCallbackClass()).clone();
+ } catch (CloneNotSupportedException e) {
+ //Ignore
+ }
//setDataBindingForInterface(callbackInterface, DataObject.class.getName());
service.getInterfaceContract().setCallbackInterface(callbackInterface);
}
@@ -253,10 +263,21 @@ public class XQueryIntrospector {
reference.setMultiplicity(Multiplicity.ONE_ONE);
// Set the call interface and, if present, the callback interface
- JavaInterface callInterface = javaFactory.createJavaInterface(interfaze);
+ // Set the call interface and, if present, the callback interface
+ JavaInterface callInterface = null;
+ try {
+ callInterface = (JavaInterface) javaFactory.createJavaInterface(interfaze).clone();
+ } catch (CloneNotSupportedException e) {
+ // Ignore
+ }
reference.getInterfaceContract().setInterface(callInterface);
if (callInterface.getCallbackClass() != null) {
- JavaInterface callbackInterface = javaFactory.createJavaInterface(callInterface.getCallbackClass());
+ JavaInterface callbackInterface = null;
+ try {
+ callbackInterface = (JavaInterface) javaFactory.createJavaInterface(callInterface.getCallbackClass()).clone();
+ } catch (CloneNotSupportedException e) {
+ //Ignore
+ }
reference.getInterfaceContract().setCallbackInterface(callbackInterface);
}