summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/node-impl
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2011-05-21 04:35:44 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2011-05-21 04:35:44 +0000
commit09fdc02e7a412927582fe8b46080b44b0d63ba35 (patch)
treeea0385c07e46d4a86ff253d93b868616979dd721 /sca-java-2.x/trunk/modules/node-impl
parentc34f78773a7696a06db1851389f292485e0e7ac9 (diff)
Allows pass -by-reference for self references
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1125636 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/modules/node-impl')
-rw-r--r--sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorld.java7
-rw-r--r--sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorldImpl.java8
-rw-r--r--sca-java-2.x/trunk/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeImplTestCase.java7
3 files changed, 21 insertions, 1 deletions
diff --git a/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorld.java b/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorld.java
index e3fcdfd25f..df5c246241 100644
--- a/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorld.java
+++ b/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorld.java
@@ -27,4 +27,11 @@ import org.oasisopen.sca.annotation.Remotable;
@Remotable
public interface HelloWorld {
String hello(String name);
+
+ Message echo(Message msg);
+
+ public class Message {
+ public String name;
+ public String message;
+ }
}
diff --git a/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorldImpl.java b/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorldImpl.java
index c9a7560b12..3285ab12db 100644
--- a/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorldImpl.java
+++ b/sca-java-2.x/trunk/modules/node-impl/src/test/java/hello/HelloWorldImpl.java
@@ -19,6 +19,8 @@
package hello;
+import org.oasisopen.sca.annotation.AllowsPassByReference;
+
/**
* HelloWorldImpl
*/
@@ -27,4 +29,10 @@ public class HelloWorldImpl implements HelloWorld {
System.out.println("Hello: " + name);
return "Hello, " + name;
}
+
+ @Override
+ @AllowsPassByReference
+ public Message echo(Message msg) {
+ return msg;
+ }
}
diff --git a/sca-java-2.x/trunk/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeImplTestCase.java b/sca-java-2.x/trunk/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeImplTestCase.java
index fc7547f830..86a85034ae 100644
--- a/sca-java-2.x/trunk/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeImplTestCase.java
+++ b/sca-java-2.x/trunk/modules/node-impl/src/test/java/org/apache/tuscany/sca/node/impl/NodeImplTestCase.java
@@ -125,7 +125,12 @@ public class NodeImplTestCase {
address = node.getEndpointAddress("HelloWorld/HelloWorld/HelloWorld");
Assert.assertNotNull(address);
address = node.getEndpointAddress("HelloWorld/HelloWorld1");
- Assert.assertNull(address);
+ Assert.assertNull(address);
+
+ HelloWorld.Message msg = new HelloWorld.Message();
+ msg.name = "John";
+ msg.message = "Hi";
+ Assert.assertSame(msg, hw.echo(msg));
node.stop();
}