org.oddjob.scheduling
Class TrackingExecutor
java.lang.Object
org.oddjob.scheduling.TrackingExecutor
- All Implemented Interfaces:
- Executor, ExecutorService, ScheduledExecutorService
public class TrackingExecutor
- extends Object
- implements ScheduledExecutorService
Method Summary |
boolean |
awaitTermination(long timeout,
TimeUnit unit)
|
void |
execute(Runnable command)
|
int |
getTaskCount()
|
|
invokeAll(Collection<? extends Callable<T>> tasks)
|
|
invokeAll(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit)
|
|
invokeAny(Collection<? extends Callable<T>> tasks)
|
|
invokeAny(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit)
|
boolean |
isShutdown()
|
boolean |
isTerminated()
|
|
schedule(Callable<V> callable,
long delay,
TimeUnit unit)
|
ScheduledFuture<?> |
schedule(Runnable command,
long delay,
TimeUnit unit)
|
ScheduledFuture<?> |
scheduleAtFixedRate(Runnable command,
long initialDelay,
long period,
TimeUnit unit)
|
ScheduledFuture<?> |
scheduleWithFixedDelay(Runnable command,
long initialDelay,
long delay,
TimeUnit unit)
|
void |
shutdown()
|
List<Runnable> |
shutdownNow()
|
|
submit(Callable<T> task)
|
Future<?> |
submit(Runnable task)
|
|
submit(Runnable task,
T result)
|
void |
waitForNothingOutstanding()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TrackingExecutor
public TrackingExecutor(ScheduledExecutorService scheduler)
getTaskCount
public int getTaskCount()
waitForNothingOutstanding
public void waitForNothingOutstanding()
throws InterruptedException
- Throws:
InterruptedException
schedule
public ScheduledFuture<?> schedule(Runnable command,
long delay,
TimeUnit unit)
- Specified by:
schedule
in interface ScheduledExecutorService
schedule
public <V> ScheduledFuture<V> schedule(Callable<V> callable,
long delay,
TimeUnit unit)
- Specified by:
schedule
in interface ScheduledExecutorService
scheduleAtFixedRate
public ScheduledFuture<?> scheduleAtFixedRate(Runnable command,
long initialDelay,
long period,
TimeUnit unit)
- Specified by:
scheduleAtFixedRate
in interface ScheduledExecutorService
scheduleWithFixedDelay
public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command,
long initialDelay,
long delay,
TimeUnit unit)
- Specified by:
scheduleWithFixedDelay
in interface ScheduledExecutorService
awaitTermination
public boolean awaitTermination(long timeout,
TimeUnit unit)
throws InterruptedException
- Specified by:
awaitTermination
in interface ExecutorService
- Throws:
InterruptedException
invokeAll
public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks)
throws InterruptedException
- Specified by:
invokeAll
in interface ExecutorService
- Throws:
InterruptedException
invokeAll
public <T> List<Future<T>> invokeAll(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit)
throws InterruptedException
- Specified by:
invokeAll
in interface ExecutorService
- Throws:
InterruptedException
invokeAny
public <T> T invokeAny(Collection<? extends Callable<T>> tasks)
throws InterruptedException,
ExecutionException
- Specified by:
invokeAny
in interface ExecutorService
- Throws:
InterruptedException
ExecutionException
invokeAny
public <T> T invokeAny(Collection<? extends Callable<T>> tasks,
long timeout,
TimeUnit unit)
throws InterruptedException,
ExecutionException,
TimeoutException
- Specified by:
invokeAny
in interface ExecutorService
- Throws:
InterruptedException
ExecutionException
TimeoutException
isShutdown
public boolean isShutdown()
- Specified by:
isShutdown
in interface ExecutorService
isTerminated
public boolean isTerminated()
- Specified by:
isTerminated
in interface ExecutorService
shutdown
public void shutdown()
- Specified by:
shutdown
in interface ExecutorService
shutdownNow
public List<Runnable> shutdownNow()
- Specified by:
shutdownNow
in interface ExecutorService
submit
public <T> Future<T> submit(Callable<T> task)
- Specified by:
submit
in interface ExecutorService
submit
public Future<?> submit(Runnable task)
- Specified by:
submit
in interface ExecutorService
submit
public <T> Future<T> submit(Runnable task,
T result)
- Specified by:
submit
in interface ExecutorService
execute
public void execute(Runnable command)
- Specified by:
execute
in interface Executor