Brooklyn

brooklyn.util.task
[Java] Class BasicExecutionManager

java.lang.Object
  brooklyn.util.task.BasicExecutionManager
All Implemented Interfaces:
ExecutionManager

public class BasicExecutionManager

TODO javadoc


Method Summary
protected void afterEnd(java.util.Map flags, Task task)

protected void beforeStart(java.util.Map flags, Task task)

protected void beforeSubmit(java.util.Map flags, Task task)

boolean clearTaskPreprocessorForTag(java.lang.Object tag)

Forgets that any preprocessor was associated with a tag.

boolean clearTaskSchedulerForTag(java.lang.Object tag)

Forgets that any scheduler was associated with a tag.

static Task getCurrentTask()

@deprecated in 0.4.0, use Tasks.current()

long getNumActiveTasks()

long getNumIncompleteTasks()

static java.lang.ThreadLocal getPerThreadCurrentTask()

TaskPreprocessor getTaskPreprocessorForTag(java.lang.Object tag)

Returns TaskPreprocessor defined for tasks with the given tag, or null if none.

TaskScheduler getTaskSchedulerForTag(java.lang.Object tag)

java.util.Set getTaskTags()

java.util.Set getTasksWithAllTags(java.lang.Iterable tags)

java.util.Set getTasksWithAnyTag(java.lang.Iterable tags)

java.util.Set getTasksWithTag(java.lang.Object tag)

long getTotalTasksSubmitted()

protected java.util.concurrent.ThreadFactory newThreadFactory()

for use by overriders to use custom thread factory

Task scheduleWith(Task task)

Task scheduleWith(java.util.Map flags, Task task)

static void setBlockingDetails(java.lang.String description)

convenience for setting "blocking details" on any task where the current thread is running; typically invoked prior to a wait, for transparency to a user; then invoked with 'null' just after the wait

void setTaskPreprocessorForTag(java.lang.Object tag, java.lang.Class preprocessor)

@see #setTaskPreprocessorForTag(Object, TaskPreprocessor)

void setTaskPreprocessorForTag(java.lang.Object tag, TaskPreprocessor preprocessor)

Defines a TaskPreprocessor to run on all subsequently submitted jobs with the given tag.

void setTaskSchedulerForTag(java.lang.Object tag, java.lang.Class scheduler)

void setTaskSchedulerForTag(java.lang.Object tag, TaskScheduler scheduler)

Defines a TaskScheduler to run on all subsequently submitted jobs with the given tag.

void shutdownNow()

Task submit(java.lang.Runnable r)

Task submit(java.util.Map flags, java.lang.Runnable r)

Task submit(java.util.concurrent.Callable c)

Task submit(java.util.Map flags, java.util.concurrent.Callable c)

Task submit(Task t)

Task submit(java.util.Map flags, Task task)

Task submit(java.util.Map flags, java.lang.Object c)

protected Task submitNewScheduledTask(java.util.Map flags, ScheduledTask task)

protected Task submitNewTask(java.util.Map flags, Task task)

static java.lang.Object withBlockingDetails(java.lang.String description, java.util.concurrent.Callable code)

convenience for setting "blocking details" on any task where the current thread is running, while the passed code is executed; often used from groovy as withBlockingDetails("sleeping 5s") { Thread.sleep(5000); }

 
Methods inherited from class java.lang.Object
java.lang.Object#wait(), java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()
 

Method Detail

afterEnd

@SuppressWarnings("deprecation")
protected void afterEnd(java.util.Map flags, Task task)


beforeStart

@SuppressWarnings("deprecation")
protected void beforeStart(java.util.Map flags, Task task)


beforeSubmit

@SuppressWarnings("deprecation")
protected void beforeSubmit(java.util.Map flags, Task task)


clearTaskPreprocessorForTag

public boolean clearTaskPreprocessorForTag(java.lang.Object tag)
Forgets that any preprocessor was associated with a tag.
See Also:
setTaskPreprocessorForTag(Object, TaskPreprocessor)
setTaskPreprocessorForTag(Object, Class)


clearTaskSchedulerForTag

public boolean clearTaskSchedulerForTag(java.lang.Object tag)
Forgets that any scheduler was associated with a tag.
See Also:
setTaskSchedulerForTag(Object, TaskScheduler)
setTaskSchedulerForTag(Object, Class)


getCurrentTask

public static Task getCurrentTask()
deprecated:
in 0.4.0, use Tasks.current()


getNumActiveTasks

public long getNumActiveTasks()


getNumIncompleteTasks

public long getNumIncompleteTasks()


getPerThreadCurrentTask

public static java.lang.ThreadLocal getPerThreadCurrentTask()


getTaskPreprocessorForTag

@Deprecated
public TaskPreprocessor getTaskPreprocessorForTag(java.lang.Object tag)
Returns TaskPreprocessor defined for tasks with the given tag, or null if none.


getTaskSchedulerForTag

public TaskScheduler getTaskSchedulerForTag(java.lang.Object tag)


getTaskTags

public java.util.Set getTaskTags()


getTasksWithAllTags

public java.util.Set getTasksWithAllTags(java.lang.Iterable tags)


getTasksWithAnyTag

public java.util.Set getTasksWithAnyTag(java.lang.Iterable tags)


getTasksWithTag

public java.util.Set getTasksWithTag(java.lang.Object tag)


getTotalTasksSubmitted

public long getTotalTasksSubmitted()


newThreadFactory

protected java.util.concurrent.ThreadFactory newThreadFactory()
for use by overriders to use custom thread factory


scheduleWith

public Task scheduleWith(Task task)


scheduleWith

public Task scheduleWith(java.util.Map flags, Task task)


setBlockingDetails

public static void setBlockingDetails(java.lang.String description)
convenience for setting "blocking details" on any task where the current thread is running; typically invoked prior to a wait, for transparency to a user; then invoked with 'null' just after the wait
deprecated:
in 0.4.0, use Tasks.setBlockingDetails


setTaskPreprocessorForTag

@SuppressWarnings("deprecation")
public void setTaskPreprocessorForTag(java.lang.Object tag, java.lang.Class preprocessor)
See Also:
setTaskPreprocessorForTag(Object, TaskPreprocessor)


setTaskPreprocessorForTag

@SuppressWarnings("deprecation")
public void setTaskPreprocessorForTag(java.lang.Object tag, TaskPreprocessor preprocessor)
Defines a TaskPreprocessor to run on all subsequently submitted jobs with the given tag. Maximum of one allowed currently. Resubmissions of the same preprocessor (or preprocessor class) allowed. If changing, you must call clearTaskPreprocessorForTag(Object) between the two.
See Also:
setTaskPreprocessorForTag(Object, Class)


setTaskSchedulerForTag

public void setTaskSchedulerForTag(java.lang.Object tag, java.lang.Class scheduler)


setTaskSchedulerForTag

public void setTaskSchedulerForTag(java.lang.Object tag, TaskScheduler scheduler)
Defines a TaskScheduler to run on all subsequently submitted jobs with the given tag. Maximum of one allowed currently. Resubmissions of the same scheduler (or scheduler class) allowed. If changing, you must call clearTaskSchedulerForTag(Object) between the two.
See Also:
setTaskSchedulerForTag(Object, Class)


shutdownNow

public void shutdownNow()


submit

public Task submit(java.lang.Runnable r)


submit

public Task submit(java.util.Map flags, java.lang.Runnable r)


submit

public Task submit(java.util.concurrent.Callable c)


submit

public Task submit(java.util.Map flags, java.util.concurrent.Callable c)


submit

public Task submit(Task t)


submit

public Task submit(java.util.Map flags, Task task)


submit

public Task submit(java.util.Map flags, java.lang.Object c)


submitNewScheduledTask

protected Task submitNewScheduledTask(java.util.Map flags, ScheduledTask task)


submitNewTask

protected Task submitNewTask(java.util.Map flags, Task task)


withBlockingDetails

public static java.lang.Object withBlockingDetails(java.lang.String description, java.util.concurrent.Callable code)
convenience for setting "blocking details" on any task where the current thread is running, while the passed code is executed; often used from groovy as withBlockingDetails("sleeping 5s") { Thread.sleep(5000); }
deprecated:
in 0.4.0, use Tasks.withBlockingDetails


 

Brooklyn Multi-Cloud Application Management Platform
brooklyncentral.github.com. Apache License. © 2012.