Author: jboynes
Date: Tue Jul 25 06:56:30 2006
New Revision: 425396
URL: http://svn.apache.org/viewvc?rev=425396&view=rev
Log:
apply patch from Meeraj for TUSCANY-573
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManager.java
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManagerTestCase.java
Modified:
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManager.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManager.java?rev=425396&r1=425395&r2=425396&view=diff
==============================================================================
---
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManager.java
(original)
+++
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManager.java
Tue Jul 25 06:56:30 2006
@@ -79,11 +79,11 @@
public WorkItem schedule(Work work, WorkListener workListener) throws
WorkRejectedException {
DefaultWorkItem workItem = new DefaultWorkItem(new UID().toString(),
work);
+ if (workListener != null) {
+ workItems.put(workItem, workListener);
+ }
+ workAccepted(workItem, work);
if (scheduleWork(work, workItem)) {
- if (workListener != null) {
- workItems.put(workItem, workListener);
- }
- workAccepted(workItem, work);
return workItem;
} else {
workItem.setStatus(WorkEvent.WORK_REJECTED);
@@ -198,7 +198,7 @@
* Overrides the run method.
*/
public void run() {
- workStarted(workItem, decoratedWork);
+ workStarted(workItem, decoratedWork);
try {
decoratedWork.run();
workCompleted(workItem, decoratedWork);
Modified:
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManagerTestCase.java
URL:
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManagerTestCase.java?rev=425396&r1=425395&r2=425396&view=diff
==============================================================================
---
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManagerTestCase.java
(original)
+++
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/services/work/jsr237/workmanager/ThreadPoolWorkManagerTestCase.java
Tue Jul 25 06:56:30 2006
@@ -20,94 +20,94 @@
public class ThreadPoolWorkManagerTestCase extends TestCase {
public void testSchedule() throws Exception {
-// final CountDownLatch latch = new CountDownLatch(1);
-// Work work = createMock(Work.class);
-// work.run();
-// expectLastCall().andStubAnswer(new IAnswer() {
-// public Object answer() throws Throwable {
-// latch.countDown();
-// return null;
-// }
-// });
-// replay(work);
-// ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
-// mgr.schedule(work);
-// latch.await();
-// verify(work);
+ final CountDownLatch latch = new CountDownLatch(1);
+ Work work = createMock(Work.class);
+ work.run();
+ expectLastCall().andStubAnswer(new IAnswer() {
+ public Object answer() throws Throwable {
+ latch.countDown();
+ return null;
+ }
+ });
+ replay(work);
+ ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
+ mgr.schedule(work);
+ latch.await();
+ verify(work);
}
public void testListener() throws Exception {
-// final CountDownLatch latch = new CountDownLatch(1);
-// WorkListener listener = createStrictMock(WorkListener.class);
-// listener.workAccepted(isA(WorkEvent.class));
-// listener.workStarted(isA(WorkEvent.class));
-// listener.workCompleted(isA(WorkEvent.class));
-// expectLastCall();
-// replay(listener);
-// Work work = createMock(Work.class);
-// work.run();
-// expectLastCall().andStubAnswer(new IAnswer() {
-// public Object answer() throws Throwable {
-// latch.countDown();
-// return null;
-// }
-// });
-// replay(work);
-// ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
-// mgr.schedule(work, listener);
-// latch.await();
-// verify(work);
+ final CountDownLatch latch = new CountDownLatch(1);
+ WorkListener listener = createStrictMock(WorkListener.class);
+ listener.workAccepted(isA(WorkEvent.class));
+ listener.workStarted(isA(WorkEvent.class));
+ listener.workCompleted(isA(WorkEvent.class));
+ expectLastCall();
+ replay(listener);
+ Work work = createMock(Work.class);
+ work.run();
+ expectLastCall().andStubAnswer(new IAnswer() {
+ public Object answer() throws Throwable {
+ latch.countDown();
+ return null;
+ }
+ });
+ replay(work);
+ ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
+ mgr.schedule(work, listener);
+ latch.await();
+ verify(work);
}
public void testDelayListener() throws Exception {
-// final CountDownLatch latch = new CountDownLatch(1);
-// final CountDownLatch latch2 = new CountDownLatch(1);
-// WorkListener listener = createStrictMock(WorkListener.class);
-// listener.workAccepted(isA(WorkEvent.class));
-// listener.workStarted(isA(WorkEvent.class));
-// listener.workCompleted(isA(WorkEvent.class));
-// expectLastCall().andStubAnswer(new IAnswer() {
-// public Object answer() throws Throwable {
-// latch2.countDown();
-// return null;
-// }
-// });
-// replay(listener);
-// Work work = createMock(Work.class);
-// work.run();
-// expectLastCall().andStubAnswer(new IAnswer() {
-// public Object answer() throws Throwable {
-// latch.await();
-// return null;
-// }
-// });
-// replay(work);
-// ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
-// mgr.schedule(work, listener);
-// latch.countDown();
-// verify(work);
+ final CountDownLatch latch = new CountDownLatch(1);
+ final CountDownLatch latch2 = new CountDownLatch(1);
+ WorkListener listener = createStrictMock(WorkListener.class);
+ listener.workAccepted(isA(WorkEvent.class));
+ listener.workStarted(isA(WorkEvent.class));
+ listener.workCompleted(isA(WorkEvent.class));
+ expectLastCall().andStubAnswer(new IAnswer() {
+ public Object answer() throws Throwable {
+ latch2.countDown();
+ return null;
+ }
+ });
+ replay(listener);
+ Work work = createMock(Work.class);
+ work.run();
+ expectLastCall().andStubAnswer(new IAnswer() {
+ public Object answer() throws Throwable {
+ latch.await();
+ return null;
+ }
+ });
+ replay(work);
+ ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
+ mgr.schedule(work, listener);
+ latch.countDown();
+ verify(work);
}
public void testErrorListener() throws Exception {
-// final CountDownLatch latch = new CountDownLatch(1);
-// WorkListener listener = createStrictMock(WorkListener.class);
-// listener.workAccepted(isA(WorkEvent.class));
-// listener.workStarted(isA(WorkEvent.class));
-// listener.workCompleted(isA(WorkEvent.class));
-// replay(listener);
-// Work work = createMock(Work.class);
-// work.run();
-// expectLastCall().andStubAnswer(new IAnswer() {
-// public Object answer() throws Throwable {
-// latch.countDown();
-// throw new RuntimeException();
-// }
-// });
-// replay(work);
-// ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
-// mgr.schedule(work, listener);
-// latch.await();
-// verify(work);
+ final CountDownLatch latch = new CountDownLatch(1);
+ WorkListener listener = createStrictMock(WorkListener.class);
+ listener.workAccepted(isA(WorkEvent.class));
+ listener.workStarted(isA(WorkEvent.class));
+ listener.workCompleted(isA(WorkEvent.class));
+ replay(listener);
+ Work work = createMock(Work.class);
+ work.run();
+ expectLastCall().andStubAnswer(new IAnswer() {
+ public Object answer() throws Throwable {
+ latch.countDown();
+ throw new RuntimeException();
+ }
+ });
+ replay(work);
+ ThreadPoolWorkManager mgr = new ThreadPoolWorkManager(1);
+ mgr.schedule(work, listener);
+ latch.await();
+ verify(work);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]