Package org.opennms.core.tasks
Interface TaskCoordinator
-
- All Known Implementing Classes:
DefaultTaskCoordinator
public interface TaskCoordinator
TaskCoordinator- Version:
- $Id: $
- Author:
- brozow
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DEFAULT_EXECUTOR
ConstantDEFAULT_EXECUTOR="default"
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addDependency(AbstractTask prereq, AbstractTask dependent)
addDependencyvoid
addOrUpdateExecutor(java.lang.String executorName, java.util.concurrent.Executor executor)
addOrUpdateExecutorTaskBuilder<BatchTask>
createBatch()
createBatchBatchTask
createBatch(java.lang.Runnable... tasks)
createBatchTaskBuilder<BatchTask>
createBatch(ContainerTask<?> parent)
createBatchBatchTask
createBatch(ContainerTask<?> parent, java.lang.Runnable... tasks)
createBatchTaskBuilder<SequenceTask>
createSequence()
createSequenceTaskBuilder<SequenceTask>
createSequence(ContainerTask<?> parent)
createSequenceSequenceTask
createSequence(ContainerTask<?> parent, java.lang.Runnable... tasks)
createSequenceSyncTask
createTask(ContainerTask<?> parent, java.lang.Runnable r)
createTaskSyncTask
createTask(ContainerTask<?> parent, java.lang.Runnable r, java.lang.String schedulingHint)
createTask<T> AsyncTask<T>
createTask(ContainerTask<?> parent, Async<T> async, Callback<T> cb)
createTaskvoid
markTaskAsCompleted(AbstractTask task)
void
schedule(AbstractTask task)
schedulevoid
setExecutors(java.util.Map<java.lang.String,java.util.concurrent.Executor> executors)
setExecutorsvoid
setLoopDelay(long millis)
setLoopDelayvoid
submitToExecutor(java.lang.String executorPreference, java.lang.Runnable workToBeDone, AbstractTask owningTask)
-
-
-
Field Detail
-
DEFAULT_EXECUTOR
static final java.lang.String DEFAULT_EXECUTOR
ConstantDEFAULT_EXECUTOR="default"
- See Also:
- Constant Field Values
-
-
Method Detail
-
createTask
SyncTask createTask(ContainerTask<?> parent, java.lang.Runnable r)
createTask
- Parameters:
parent
- aContainerTask
object.r
- aRunnable
object.- Returns:
- a
SyncTask
object.
-
createTask
SyncTask createTask(ContainerTask<?> parent, java.lang.Runnable r, java.lang.String schedulingHint)
createTask
- Parameters:
parent
- aContainerTask
object.r
- aRunnable
object.schedulingHint
- aString
object.- Returns:
- a
SyncTask
object.
-
createTask
<T> AsyncTask<T> createTask(ContainerTask<?> parent, Async<T> async, Callback<T> cb)
createTask
- Type Parameters:
T
- a T object.- Parameters:
parent
- aContainerTask
object.async
- aAsync
object.cb
- aCallback
object.- Returns:
- a
AsyncTask
object.
-
createBatch
TaskBuilder<BatchTask> createBatch(ContainerTask<?> parent)
createBatch
- Parameters:
parent
- aContainerTask
object.- Returns:
- a
TaskBuilder
object.
-
createBatch
TaskBuilder<BatchTask> createBatch()
createBatch
- Returns:
- a
TaskBuilder
object.
-
createBatch
BatchTask createBatch(ContainerTask<?> parent, java.lang.Runnable... tasks)
createBatch
- Parameters:
parent
- aContainerTask
object.tasks
- aRunnable
object.- Returns:
- a
BatchTask
object.
-
createBatch
BatchTask createBatch(java.lang.Runnable... tasks)
createBatch
- Parameters:
tasks
- aRunnable
object.- Returns:
- a
BatchTask
object.
-
createSequence
TaskBuilder<SequenceTask> createSequence(ContainerTask<?> parent)
createSequence
- Parameters:
parent
- aContainerTask
object.- Returns:
- a
TaskBuilder
object.
-
createSequence
TaskBuilder<SequenceTask> createSequence()
createSequence
- Returns:
- a
TaskBuilder
object.
-
createSequence
SequenceTask createSequence(ContainerTask<?> parent, java.lang.Runnable... tasks)
createSequence
- Parameters:
parent
- aContainerTask
object.tasks
- aRunnable
object.- Returns:
- a
SequenceTask
object.
-
setLoopDelay
void setLoopDelay(long millis)
setLoopDelay
- Parameters:
millis
- a long.
-
schedule
void schedule(AbstractTask task)
schedule
- Parameters:
task
- aAbstractTask
object.
-
addDependency
void addDependency(AbstractTask prereq, AbstractTask dependent)
addDependency
- Parameters:
prereq
- aAbstractTask
object.dependent
- aAbstractTask
object.
-
markTaskAsCompleted
void markTaskAsCompleted(AbstractTask task)
-
submitToExecutor
void submitToExecutor(java.lang.String executorPreference, java.lang.Runnable workToBeDone, AbstractTask owningTask)
-
addOrUpdateExecutor
void addOrUpdateExecutor(java.lang.String executorName, java.util.concurrent.Executor executor)
addOrUpdateExecutor
- Parameters:
executorName
- aString
object.executor
- aExecutor
object.
-
setExecutors
void setExecutors(java.util.Map<java.lang.String,java.util.concurrent.Executor> executors)
setExecutors
- Parameters:
executors
- aMap
object.
-
-