T - the result type of the taskImpl - The implementation type ofpublic abstract class DepsAwareTask<T,Impl extends DepsAwareTask<T,Impl>> extends Object
DepsAwareExecutor. This task will offer dependency discovery to the
 executor so that the executor can perform better scheduling.
 The task uses DepsAwareTask.DepsSupplier to mark what dependencies are needed.
| Modifier and Type | Class and Description | 
|---|---|
static class  | 
DepsAwareTask.DepsSupplier<Impl>
The dependency information of a task. 
 | 
| Modifier and Type | Field and Description | 
|---|---|
protected CompletableFuture<T> | 
result  | 
| Modifier | Constructor and Description | 
|---|---|
protected  | 
DepsAwareTask(Callable<T> callable,
             DepsAwareTask.DepsSupplier<Impl> depsSupplier)  | 
| Modifier and Type | Method and Description | 
|---|---|
Callable<T> | 
getCallable()  | 
DepsAwareTask.DepsSupplier<Impl> | 
getDepsSupplier()  | 
Future<T> | 
getResultFuture()  | 
protected final CompletableFuture<T> result
protected DepsAwareTask(Callable<T> callable, DepsAwareTask.DepsSupplier<Impl> depsSupplier)
public DepsAwareTask.DepsSupplier<Impl> getDepsSupplier()