Author: thorsten
Date: Mon Oct 26 11:32:22 2009
New Revision: 829755
URL: http://svn.apache.org/viewvc?rev=829755&view=rev
Log:
DROIDS-67 - Better control of the finished task
Reporter/due-to: Javier Puerto
Thanks Javier
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/TaskMaster.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/TaskMaster.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/TaskMaster.java?rev=829755&r1=829754&r2=829755&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/TaskMaster.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/api/TaskMaster.java
Mon Oct 26 11:32:22 2009
@@ -43,5 +43,5 @@
T getLastCompletedTask();
- void awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException;
+ boolean awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException;
}
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java?rev=829755&r1=829754&r2=829755&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/MultiThreadedTaskMaster.java
Mon Oct 26 11:32:22 2009
@@ -349,9 +349,9 @@
}
- public void awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException {
+ public boolean awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException {
log.info("awaitTermination()");
- pool.awaitTermination(timeout, unit);
+ return pool.awaitTermination(timeout, unit);
}
public final void setExceptionHandler(TaskExceptionHandler exHandler) {
Modified:
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
URL:
http://svn.apache.org/viewvc/incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java?rev=829755&r1=829754&r2=829755&view=diff
==============================================================================
---
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
(original)
+++
incubator/droids/trunk/droids-core/src/main/java/org/apache/droids/impl/SequentialTaskMaster.java
Mon Oct 26 11:32:22 2009
@@ -140,7 +140,7 @@
}
- public void awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException {
+ public boolean awaitTermination(long timeout, TimeUnit unit) throws
InterruptedException {
if (timeout < 0) {
timeout = 0;
}
@@ -152,11 +152,12 @@
if (timeout > 0) {
remaining = deadline - System.currentTimeMillis();
if (remaining <= 0) {
- break;
+ return false; // Reach if timeout is over and no finish.
}
}
}
}
+ return true;
}
@Override