diff options
Diffstat (limited to 'branches/sca-java-1.x/modules/binding-erlang-runtime/src')
3 files changed, 17 insertions, 4 deletions
diff --git a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/main/java/org/apache/tuscany/sca/binding/erlang/impl/ErlangNode.java b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/main/java/org/apache/tuscany/sca/binding/erlang/impl/ErlangNode.java index 94bac31809..8a2ca44290 100644 --- a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/main/java/org/apache/tuscany/sca/binding/erlang/impl/ErlangNode.java +++ b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/main/java/org/apache/tuscany/sca/binding/erlang/impl/ErlangNode.java @@ -75,8 +75,7 @@ public class ErlangNode implements Runnable { } public void run() { - // FIXME: add configurable thread pools - executors = Executors.newFixedThreadPool(10); + executors = Executors.newFixedThreadPool(nodeElement.getBinding().getServiceThreadPool()); while (!stopRequested) { try { OtpConnection connection = self.accept(); @@ -92,6 +91,7 @@ public class ErlangNode implements Runnable { logger.log(Level.WARNING, "Error while authenticating client", e); } } + executors.shutdownNow(); } private void registerBinding(ErlangBinding binding, 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 0460db2c1e..8450fd48a4 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 @@ -37,7 +37,7 @@ public class MboxListener implements Runnable { public MboxListener(OtpMbox mbox, Object response) { this(mbox, response, 0); } - + public MboxListener(OtpMbox mbox, Object response, long duration) { this.mbox = mbox; this.response = response; @@ -59,6 +59,20 @@ public class MboxListener implements Runnable { } public OtpMsg getMsg() { + // Sometimes clients tries to get message which isn't fully received. + // If so - give it more tries. This sometimes caused + // NullPointerException in + // ReferenceServiceTestCase.testMultipleArguments(). + for (int i = 0; i < 3; i++) { + if (msg != null) { + return msg; + } else { + try { + Thread.sleep(100); + } catch (InterruptedException e) { + } + } + } return msg; } diff --git a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/ReferenceServiceTestCase.java b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/ReferenceServiceTestCase.java index 6d9d117b0e..b602590183 100644 --- a/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/ReferenceServiceTestCase.java +++ b/branches/sca-java-1.x/modules/binding-erlang-runtime/src/test/java/org/apache/tuscany/sca/binding/erlang/testing/ReferenceServiceTestCase.java @@ -284,7 +284,6 @@ public class ReferenceServiceTestCase { * * @throws Exception */ - // TODO: this test fails sometime @Test(timeout = 1000) public void testMultipleArguments() throws Exception { MboxListener mboxListener = new MboxListener(serMbox, true); |