Package org.jdeferred2.impl
Class DefaultDeferredManager
- java.lang.Object
-
- org.jdeferred2.impl.AbstractDeferredManager
-
- org.jdeferred2.impl.DefaultDeferredManager
-
- All Implemented Interfaces:
DeferredManager
public class DefaultDeferredManager extends AbstractDeferredManager
A default implementation that runs deferred tasks using anExecutorService
. Also, by default, deferred tasks are executed (submitted to the ExecutorService) automatically when it's passed intoDeferredManager
's when(...) methods. This behavior can be changed by settingsetAutoSubmit(boolean)
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.jdeferred2.DeferredManager
DeferredManager.StartPolicy
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
autoSubmit
static boolean
DEFAULT_AUTO_SUBMIT
By default,autoSubmit
will be set to true You can set it to false by usingsetAutoSubmit(boolean)
If you set it to false, that means you'll be responsible to make sure anyRunnable
orCallable
are executed.private java.util.concurrent.ExecutorService
executorService
-
Fields inherited from class org.jdeferred2.impl.AbstractDeferredManager
CALLABLE_V1, CALLABLE_V2, CALLABLE_V3, CALLABLE_V4, CALLABLE_V5, FUTURE_V1, FUTURE_V2, FUTURE_V3, FUTURE_V4, FUTURE_V5, log, PROMISE_V1, PROMISE_V2, PROMISE_V3, PROMISE_V4, PROMISE_V5, RUNNABLE_V1, RUNNABLE_V2, RUNNABLE_V3, RUNNABLE_V4, RUNNABLE_V5, TASK_V1, TASK_V2, TASK_V3, TASK_V4, TASK_V5
-
-
Constructor Summary
Constructors Constructor Description DefaultDeferredManager()
Equivalent toDefaultDeferredManager(ExecutorService)
usingExecutors.newCachedThreadPool()
DefaultDeferredManager(java.util.concurrent.ExecutorService executorService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
awaitTermination(long timeout, java.util.concurrent.TimeUnit unit)
java.util.concurrent.ExecutorService
getExecutorService()
boolean
isAutoSubmit()
ShouldRunnable
orCallable
be submitted for execution automatically when any of thewhen()
method variants is invoked.boolean
isShutdown()
boolean
isTerminated()
void
setAutoSubmit(boolean autoSubmit)
void
shutdown()
java.util.List<java.lang.Runnable>
shutdownNow()
protected void
submit(java.lang.Runnable runnable)
protected void
submit(java.util.concurrent.Callable callable)
-
Methods inherited from class org.jdeferred2.impl.AbstractDeferredManager
assertNotEmpty, assertNotNull, canPromise, deferredCallableFor, race, race, race, race, race, race, race, reject, resolve, settle, settle, settle, settle, settle, settle, settle, settle, submitForSingle, toDeferredFutureTask, toPromise, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when, when
-
-
-
-
Field Detail
-
DEFAULT_AUTO_SUBMIT
public static final boolean DEFAULT_AUTO_SUBMIT
By default,autoSubmit
will be set to true You can set it to false by usingsetAutoSubmit(boolean)
If you set it to false, that means you'll be responsible to make sure anyRunnable
orCallable
are executed.- See Also:
- Constant Field Values
-
executorService
private final java.util.concurrent.ExecutorService executorService
-
autoSubmit
private boolean autoSubmit
-
-
Constructor Detail
-
DefaultDeferredManager
public DefaultDeferredManager()
Equivalent toDefaultDeferredManager(ExecutorService)
usingExecutors.newCachedThreadPool()
-
DefaultDeferredManager
public DefaultDeferredManager(java.util.concurrent.ExecutorService executorService)
- Parameters:
executorService
-
-
-
Method Detail
-
getExecutorService
public java.util.concurrent.ExecutorService getExecutorService()
-
awaitTermination
public boolean awaitTermination(long timeout, java.util.concurrent.TimeUnit unit) throws java.lang.InterruptedException
- Throws:
java.lang.InterruptedException
-
isShutdown
public boolean isShutdown()
-
isTerminated
public boolean isTerminated()
-
shutdown
public void shutdown()
-
shutdownNow
public java.util.List<java.lang.Runnable> shutdownNow()
-
submit
protected void submit(java.lang.Runnable runnable)
- Specified by:
submit
in classAbstractDeferredManager
-
submit
protected void submit(java.util.concurrent.Callable callable)
- Specified by:
submit
in classAbstractDeferredManager
-
isAutoSubmit
public boolean isAutoSubmit()
Description copied from class:AbstractDeferredManager
ShouldRunnable
orCallable
be submitted for execution automatically when any of thewhen()
method variants is invoked.- Specified by:
isAutoSubmit
in classAbstractDeferredManager
- Returns:
-
setAutoSubmit
public void setAutoSubmit(boolean autoSubmit)
-
-