You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by mc...@apache.org on 2008/04/14 11:40:05 UTC
svn commit: r647714 - in /incubator/tuscany/java/sca/itest/oneway/src:
main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java
test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java
Author: mcombellack
Date: Mon Apr 14 02:39:57 2008
New Revision: 647714
URL: http://svn.apache.org/viewvc?rev=647714&view=rev
Log:
TUSCANY-2192 - Fixed issue where the unit test would still sometimes fail because the access to OneWayServiceImpl.callCount was not Thread safe
Modified:
incubator/tuscany/java/sca/itest/oneway/src/main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java
incubator/tuscany/java/sca/itest/oneway/src/test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java
Modified: incubator/tuscany/java/sca/itest/oneway/src/main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/oneway/src/main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java?rev=647714&r1=647713&r2=647714&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/oneway/src/main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java (original)
+++ incubator/tuscany/java/sca/itest/oneway/src/main/java/org/apache/tuscany/sca/itest/oneway/impl/OneWayServiceImpl.java Mon Apr 14 02:39:57 2008
@@ -20,6 +20,8 @@
import org.apache.tuscany.sca.itest.oneway.OneWayService;
+import edu.emory.mathcs.backport.java.util.concurrent.atomic.AtomicInteger;
+
/**
* The service for the oneway itest
*
@@ -28,15 +30,14 @@
public class OneWayServiceImpl implements OneWayService {
-
- public static int callCount = 0;
-
+ /**
+ * Counts the number of invocations to doSomething()
+ */
+ public static final AtomicInteger callCount = new AtomicInteger();
+
public void doSomething(int count){
-
- synchronized(this){
- callCount++;
- }
-
+ callCount.incrementAndGet();
+
// System.out.println("Service: doSomething " + count + " callCount = " + callCount);
// System.out.flush();
Modified: incubator/tuscany/java/sca/itest/oneway/src/test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/oneway/src/test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java?rev=647714&r1=647713&r2=647714&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/oneway/src/test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/oneway/src/test/java/org/apache/tuscany/sca/itest/oneway/OneWayTestCase.java Mon Apr 14 02:39:57 2008
@@ -77,7 +77,7 @@
// This loop will wait for the required number of @OneWay method calls to
// have taken place or MAX_SLEEP_TIME to have passed.
long startSleep = System.currentTimeMillis();
- while (OneWayClientImpl.callCount != OneWayServiceImpl.callCount
+ while (OneWayClientImpl.callCount != OneWayServiceImpl.callCount.get()
&& System.currentTimeMillis() - startSleep < MAX_SLEEP_TIME) {
Thread.sleep(100);
// System.out.println("" + OneWayClientImpl.callCount + "," + OneWayServiceImpl.callCount);
@@ -85,7 +85,7 @@
System.out.println("Finished callCount = " + OneWayServiceImpl.callCount);
- Assert.assertEquals(OneWayClientImpl.callCount, OneWayServiceImpl.callCount);
+ Assert.assertEquals(OneWayClientImpl.callCount, OneWayServiceImpl.callCount.get());
}
} catch (Exception ex) {
System.err.println("Exception: " + ex.toString());
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org