|
Brooklyn | |||||||
FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | METHOD | DETAIL: FIELD | METHOD |
public interface ExecutionManager
This class manages the execution of a number of jobs with tags. It is like an executor service (and it ends up delegating to one) but adds additional support where jobs can be:
The advantage of treating them as Task instances include:
For usage instructions see submit(Map, Task), and for examples see the various ExecutionTest and TaskTest instances.
It has been developed for multi-location provisioning and management to track work being done by each Entity.
Note the use of the environment variable THREAD_POOL_SIZE which is used to size the java.util.concurrent.ExecutorService thread pool. The default is calculated as twice the number of CPUs in the system plus two, giving 10 for a four core system, 18 for an eight CPU server and so on.
Method Summary | |
---|---|
java.util.Set
|
getTaskTags()
returns all tags known to this manager (immutable) |
java.util.Set
|
getTasksWithAllTags(java.lang.Iterable tags)
|
java.util.Set
|
getTasksWithAnyTag(java.lang.Iterable tags)
|
java.util.Set
|
getTasksWithTag(java.lang.Object tag)
|
Task
|
submit(java.lang.Runnable r)
returns all tasks known to this manager (immutable) |
Task
|
submit(java.util.concurrent.Callable c)
|
Task
|
submit(Task task)
|
Task
|
submit(java.util.Map flags, java.lang.Runnable r)
|
Task
|
submit(java.util.Map flags, java.util.concurrent.Callable c)
|
Task
|
submit(java.util.Map flags, java.lang.Object c)
@see submit(Map, Task) |
Task
|
submit(java.util.Map flags, Task task)
Submits the given Task for execution in the context associated with this manager. |
Method Detail |
---|
public java.util.Set getTaskTags()
public java.util.Set getTasksWithAllTags(java.lang.Iterable tags)
public java.util.Set getTasksWithAnyTag(java.lang.Iterable tags)
public java.util.Set getTasksWithTag(java.lang.Object tag)
public Task submit(java.lang.Runnable r)
public Task submit(java.util.concurrent.Callable c)
public Task submit(Task task)
public Task submit(java.util.Map flags, java.lang.Runnable r)
public Task submit(java.util.Map flags, java.util.concurrent.Callable c)
@Deprecated public Task submit(java.util.Map flags, java.lang.Object c)
public Task submit(java.util.Map flags, Task task)
If a Map is supplied it must be modifiable (currently; may allow immutable maps in future).
Brooklyn Multi-Cloud Application Management Platform
brooklyncentral.github.com. Apache License. © 2012.