summaryrefslogtreecommitdiffstats
path: root/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java
diff options
context:
space:
mode:
authorwjaniszewski <wjaniszewski@13f79535-47bb-0310-9956-ffa450edef68>2009-04-16 08:44:36 +0000
committerwjaniszewski <wjaniszewski@13f79535-47bb-0310-9956-ffa450edef68>2009-04-16 08:44:36 +0000
commitcc8390a108db502b965721392f1df0a7be221754 (patch)
treeb5d7e298439386edc47957605928e98fec098e36 /branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java
parentce604976d31aba76df48dfd271a3e0c8a1bcac18 (diff)
Messaging improvements
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@765512 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java')
-rw-r--r--branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java
index 817ba2cefa..fe643fcff6 100644
--- a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java
+++ b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/MboxListener.java
@@ -22,6 +22,7 @@ package org.apache.tuscany.sca.binding.erlang.testing;
import org.apache.tuscany.sca.binding.erlang.impl.types.TypeHelpersProxy;
import com.ericsson.otp.erlang.OtpErlangObject;
+import com.ericsson.otp.erlang.OtpErlangPid;
import com.ericsson.otp.erlang.OtpErlangTuple;
import com.ericsson.otp.erlang.OtpMbox;
import com.ericsson.otp.erlang.OtpMsg;
@@ -50,10 +51,16 @@ public class MboxListener implements Runnable {
try {
msg = mbox.receiveMsg();
Thread.sleep(duration);
+ OtpErlangPid senderPid = null;
if (response != null) {
Object[] args = new Object[1];
args[0] = response;
- mbox.send(msg.getSenderPid(), TypeHelpersProxy.toErlang(args));
+ if (msg.getMsg().getClass().equals(OtpErlangTuple.class) && ((OtpErlangTuple) msg.getMsg()).elementAt(0).getClass().equals(OtpErlangPid.class)) {
+ senderPid = (OtpErlangPid) ((OtpErlangTuple) msg.getMsg()).elementAt(0);
+ } else {
+ senderPid = msg.getSenderPid();
+ }
+ mbox.send(senderPid, TypeHelpersProxy.toErlang(args));
}
} catch (Exception e) {
e.printStackTrace();