|
SMILA (incubation) API documentation | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.smila.jobmanager.internal.JobManagerImpl
public class JobManagerImpl
Standard implementation of JobManager service.
Constructor Summary | |
---|---|
JobManagerImpl()
|
Method Summary | |
---|---|
protected void |
activate(ComponentContext context)
initialize JobManager internally on service start. |
void |
addJobListener(JobListener listener)
Add a RequestHandler.. |
void |
cancelJob(java.lang.String jobName,
java.lang.String jobRunId)
|
protected void |
deactivate(ComponentContext context)
clean up JobManager on service shutdown. |
void |
deleteJobRunData(java.lang.String jobName,
java.lang.String jobId)
delete a previously completed job run. |
void |
finishJob(java.lang.String jobName,
java.lang.String jobRunId)
|
java.util.List<Task> |
finishTask(Task currentTask)
Finishes a task and retrieves the following tasks. |
java.util.Collection<java.lang.String> |
getCompletedJobRunIds(java.lang.String jobName)
get Ids of complete job runs. |
protected JobManagerConfiguration |
getConfiguration()
|
DefinitionPersistence |
getDefinitionPersistence()
|
protected DefinitionPersistence |
getDefPersistence()
|
protected DefinitionStorage |
getDefStorage()
|
Task |
getInitialTask(java.lang.String workerName,
java.lang.String jobName)
Creates an initial task for input-workers. |
protected java.util.concurrent.CopyOnWriteArrayList<JobListener> |
getJobListeners()
|
AnyMap |
getJobRunData(java.lang.String jobName,
java.lang.String jobId)
|
AnyMap |
getJobRunData(java.lang.String jobName,
java.lang.String jobId,
boolean returnDetails)
|
JobRunInfo |
getJobRunInfo(java.lang.String jobName)
get info on current job run. |
protected java.util.Map<java.lang.String,JobRun> |
getJobRuns()
|
protected ObjectStoreService |
getObjectStore()
|
protected RunStorage |
getRunStorage()
|
TaskGenerator |
getTaskGenerator(WorkerDefinition worker)
|
protected TaskGeneratorProvider |
getTaskGeneratorProvider()
|
protected TaskManager |
getTaskManager()
|
AnyMap |
getWorkflowRunData(java.lang.String jobName,
java.lang.String jobId,
java.lang.String workflowRunId)
get information about a workflow run. |
protected void |
handleFatalError(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String workerName,
Task currentTask,
boolean failedAfterRetry)
|
protected void |
handleObsoleteTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String workerName,
Task currentTask)
finish obsolete task - don't create follow up tasks. |
protected java.util.List<Task> |
handleRecoverableTaskError(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String workerName,
Task currentTask,
ResultDescription resultDescription)
|
protected void |
handleRecoverableTaskWithAutocommit(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String workerName,
Task currentTask,
ResultDescription resultDescription,
java.util.List<Task> followUpTasks)
recoverable error on an AUTOCOMMIT worker's task -> task is handled as succeeded. |
protected java.util.List<Task> |
handleSuccessfulTask(java.lang.String jobName,
java.lang.String jobRunId,
java.lang.String workflowRunId,
java.lang.String workerName,
Task currentTask,
java.util.Map<java.lang.String,java.lang.Number> workerCounter)
|
void |
removeJobListener(JobListener listener)
Remove the given RequestHandler. |
void |
setDefinitionStorage(DefinitionStorage defStorage)
|
void |
setObjectStoreService(ObjectStoreService objectStore)
method for DS to set a service reference. |
void |
setRunStorage(RunStorage runStorage)
|
void |
setTaskGeneratorProvider(TaskGeneratorProvider taskGeneratorProvider)
method for DS to set a service reference. |
void |
setTaskManager(TaskManager taskManager)
method for DS to set a service reference. |
java.lang.String |
startJob(java.lang.String jobName)
|
java.lang.String |
startJob(java.lang.String jobName,
JobRunMode jobRunMode)
|
void |
unsetDefinitionStorage(DefinitionStorage defStorage)
|
void |
unsetObjectStoreService(ObjectStoreService objectStore)
method for DS to unset a service reference. |
void |
unsetRunStorage(RunStorage runStorage)
|
void |
unsetTaskGeneratorProvider(TaskGeneratorProvider taskGeneratorProvider)
method for DS to unset a service reference. |
void |
unsetTaskManager(TaskManager taskManager)
method for DS to unset a service reference. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public JobManagerImpl()
Method Detail |
---|
protected void activate(ComponentContext context)
context
- OSGi service context.protected void deactivate(ComponentContext context)
context
- OSGi service context.protected JobManagerConfiguration getConfiguration()
protected DefinitionPersistence getDefPersistence()
protected DefinitionStorage getDefStorage()
protected RunStorage getRunStorage()
protected ObjectStoreService getObjectStore()
protected TaskGeneratorProvider getTaskGeneratorProvider()
protected TaskManager getTaskManager()
protected java.util.Map<java.lang.String,JobRun> getJobRuns()
protected java.util.concurrent.CopyOnWriteArrayList<JobListener> getJobListeners()
public java.lang.String startJob(java.lang.String jobName) throws JobManagerException
startJob
in interface JobManager
jobName
- name of the job to start
JobManagerException
- error starting jobpublic java.lang.String startJob(java.lang.String jobName, JobRunMode jobRunMode) throws JobManagerException
startJob
in interface JobManager
jobName
- name of the job to startjobRunMode
- the mode for the job to start.
JobManagerException
- error starting jobpublic AnyMap getJobRunData(java.lang.String jobName, java.lang.String jobId) throws JobManagerException
getJobRunData
in interface JobManager
jobName
- name of the job for which to monitor the run.jobId
- id of the job run to get the monitoring data. May be either the current run or a completed run.
JobManagerException
- error getting job run datapublic AnyMap getJobRunData(java.lang.String jobName, java.lang.String jobId, boolean returnDetails) throws JobManagerException
getJobRunData
in interface JobManager
jobName
- name of the job for which to monitor the run.jobId
- id of the job run to get the monitoring data. May be either the current run or a completed run.returnDetails
- whether to return details (e.g. workflow/bucket definition)
JobManagerException
- error getting job run datapublic AnyMap getWorkflowRunData(java.lang.String jobName, java.lang.String jobId, java.lang.String workflowRunId) throws JobManagerException
getWorkflowRunData
in interface JobManager
JobManagerConstants.DATA_WORKFLOW_RUN_NO_OF_ACTIVE_TASKS
and
JobManagerConstants.DATA_WORKFLOW_RUN_NO_OF_TRANSIENT_BULKS
. Additional keys may be added.
JobManagerException
- jobrun or workflowrun are not active anymore.public JobRunInfo getJobRunInfo(java.lang.String jobName) throws JobManagerException
getJobRunInfo
in interface JobManager
jobName
- job name
JobManagerException
- error getting state.public java.util.Collection<java.lang.String> getCompletedJobRunIds(java.lang.String jobName) throws JobManagerException
getCompletedJobRunIds
in interface JobManager
jobName
- job name
JobManagerException
- error getting state.public void deleteJobRunData(java.lang.String jobName, java.lang.String jobId) throws JobManagerException
deleteJobRunData
in interface JobManager
jobId
- id of the complete job run to delete the monitoring data.
JobManagerException
- run id is not a completed run or error deleting it.public void finishJob(java.lang.String jobName, java.lang.String jobRunId) throws JobManagerException
finishJob
in interface JobManager
jobName
- name of the job for which to finish the run.jobRunId
- id of the job run to finish
JobManagerException
- error finishing jobpublic void cancelJob(java.lang.String jobName, java.lang.String jobRunId) throws JobManagerException
cancelJob
in interface JobManager
jobName
- name of the job for which to cancel the run.jobRunId
- id of the job run to cancel
JobManagerException
- error canceling jobpublic Task getInitialTask(java.lang.String workerName, java.lang.String jobName) throws JobManagerException
getInitialTask
in interface JobManager
workerName
- The name of the worker for which this task is requested.jobName
- The id of the task-source (e.g. index name, job id, ...) for which the task is requested. The TaskProducer
and the worker requester of the tasks should have a common understanding of what this id is about.
JobManagerException
- error because there was a jobmanager exception or a non-start-action-worker tried to get an initial task.public java.util.List<Task> finishTask(Task currentTask) throws JobManagerException
finishTask
in interface JobManager
currentTask
- The finished task.
JobManagerException
- error while trying to finish the task.protected java.util.List<Task> handleSuccessfulTask(java.lang.String jobName, java.lang.String jobRunId, java.lang.String workflowRunId, java.lang.String workerName, Task currentTask, java.util.Map<java.lang.String,java.lang.Number> workerCounter) throws JobManagerException
JobManagerException
protected void handleObsoleteTask(java.lang.String jobName, java.lang.String jobRunId, java.lang.String workflowRunId, java.lang.String workerName, Task currentTask) throws JobManagerException
JobManagerException
protected java.util.List<Task> handleRecoverableTaskError(java.lang.String jobName, java.lang.String jobRunId, java.lang.String workflowRunId, java.lang.String workerName, Task currentTask, ResultDescription resultDescription) throws JobManagerException
JobManagerException
protected void handleRecoverableTaskWithAutocommit(java.lang.String jobName, java.lang.String jobRunId, java.lang.String workflowRunId, java.lang.String workerName, Task currentTask, ResultDescription resultDescription, java.util.List<Task> followUpTasks) throws JobManagerException
JobManagerException
protected void handleFatalError(java.lang.String jobName, java.lang.String jobRunId, java.lang.String workflowRunId, java.lang.String workerName, Task currentTask, boolean failedAfterRetry) throws JobManagerException
JobManagerException
public void setDefinitionStorage(DefinitionStorage defStorage)
defStorage
- DefinitionStorage reference.public void unsetDefinitionStorage(DefinitionStorage defStorage)
defStorage
- DefinitionStorage reference.public void setRunStorage(RunStorage runStorage)
runStorage
- RunStorage reference.public void unsetRunStorage(RunStorage runStorage)
runStorage
- RunStorage reference.public void setObjectStoreService(ObjectStoreService objectStore)
objectStore
- ObjectStoreService reference.public void unsetObjectStoreService(ObjectStoreService objectStore)
objectStore
- ObjectStoreService reference.public void setTaskGeneratorProvider(TaskGeneratorProvider taskGeneratorProvider)
taskGeneratorProvider
- TaskGeneratorProvider reference.public void unsetTaskGeneratorProvider(TaskGeneratorProvider taskGeneratorProvider)
taskGeneratorProvider
- TaskGeneratorProvider reference.public void setTaskManager(TaskManager taskManager)
public void unsetTaskManager(TaskManager taskManager)
public TaskGenerator getTaskGenerator(WorkerDefinition worker)
getTaskGenerator
in interface JobManager
worker
- The worker
public void addJobListener(JobListener listener)
listener
- the new RequestHandlerpublic void removeJobListener(JobListener listener)
listener
- the RequestHandlerpublic DefinitionPersistence getDefinitionPersistence()
getDefinitionPersistence
in interface JobManager
|
SMILA (incubation) API documentation | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |