|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface TaskManager
Task Manager Interface.
Status: public Stability: DRAFT, work in progress
Task manager provides controls task execution, coordination, distribution and failover between nodes, etc. TODO
This definition specifies interface of Task Manager - a component that controls (asynchronous) task execution.
The task manager can store the task for later execution, switch them to background resume execution of a task from a different node, etc. Generally speaking, task manager provides operation to manage tasks in the whole midPoint cluster of IDM nodes.
| Method Summary | |
|---|---|
java.lang.String |
addTask(TaskType taskType,
OperationResult parentResult)
Add new task. |
void |
claimTask(Task task,
OperationResult parentResult)
Claim task exclusively for this node. |
Task |
createTaskInstance()
Creates new transient, running, claimed task instance. |
Task |
createTaskInstance(TaskType taskType)
Creates task instance from the XML task representation. |
void |
deactivateServiceThreads()
Deactivate service threads (temporarily). |
void |
deleteTask(java.lang.String oid,
OperationResult parentResult)
Deletes task with provided OID. |
java.util.Set<Task> |
getRunningTasks()
Returns tasks that currently run on this node. |
boolean |
getServiceThreadsActivationState()
Returns true if the service threads are running. |
Task |
getTask(java.lang.String taskOid,
OperationResult parentResult)
Returns a task with specified OID. |
java.util.Set<Task> |
listTasks()
Lists all tasks. |
void |
modifyTask(ObjectModificationType objectChange,
OperationResult parentResult)
Modifies task using relative change description. |
void |
reactivateServiceThreads()
Re-activate the service threads after they have been deactivated. |
void |
registerHandler(java.lang.String uri,
TaskHandler handler)
Register a handler for a specified handler URI. |
void |
releaseTask(Task task,
OperationResult parentResult)
Release a claimed task. |
void |
shutdown()
Make sure all processes are stopped properly. |
void |
switchToBackground(Task task,
OperationResult parentResult)
Switches the provided task to background, making it asynchronous. |
| Method Detail |
|---|
Task createTaskInstance()
Task createTaskInstance(TaskType taskType)
taskType - JAXB (XML) representation of the task
Task getTask(java.lang.String taskOid,
OperationResult parentResult)
throws ObjectNotFoundException,
SchemaException
taskOid - OID of the persistent task.
SchemaException - error dealing with resource schema
ObjectNotFoundException - wrong OID format, etc.
java.lang.String addTask(TaskType taskType,
OperationResult parentResult)
throws ObjectAlreadyExistsException,
SchemaException
object - object to createscripts - scripts to execute before/after the operationparentResult - parent OperationResult (in/out)
ObjectAlreadyExistsException - object with specified identifiers already exists, cannot add
SchemaException - error dealing with storage schema, e.g. schema violation
java.lang.IllegalArgumentException - wrong OID format, etc.
void modifyTask(ObjectModificationType objectChange,
OperationResult parentResult)
throws ObjectNotFoundException,
SchemaException
objectChange - specification of object changesscripts - scripts that should be executed before of after operationparentResult - parent OperationResult (in/out)
ObjectNotFoundException - specified object does not exist
SchemaException - resulting object would violate the schema
java.lang.IllegalArgumentException - wrong OID format, described change is not applicable
void deleteTask(java.lang.String oid,
OperationResult parentResult)
throws ObjectNotFoundException
oid - OID of object to deleteparentResult - parent OperationResult (in/out)
ObjectNotFoundException - specified object does not exist
java.lang.IllegalArgumentException - wrong OID format, described change is not applicable
void claimTask(Task task,
OperationResult parentResult)
throws ObjectNotFoundException,
ConcurrencyException,
SchemaException
task - task instance to claim
SchemaException
ConcurrencyException
ObjectNotFoundException
void releaseTask(Task task,
OperationResult parentResult)
throws ObjectNotFoundException,
SchemaException
task - task instance to release
ObjectNotFoundException
SchemaException
java.lang.IllegalArgumentException - attempt to release a task that is not claimed.
void switchToBackground(Task task,
OperationResult parentResult)
task - task to switch to background.java.util.Set<Task> listTasks()
void registerHandler(java.lang.String uri,
TaskHandler handler)
void shutdown()
java.util.Set<Task> getRunningTasks()
void deactivateServiceThreads()
void reactivateServiceThreads()
boolean getServiceThreadsActivationState()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||