SMILA (incubation) API documentation

org.eclipse.smila.jobmanager.taskgenerator
Interface TaskGenerator

All Known Implementing Classes:
CombineInputWithAllTaskGenerator, DefaultTaskGenerator, TaskGeneratorBase

public interface TaskGenerator

Interface for TaskGenerator implementations. TaskGenerators are used to create (follow-up) tasks for a specifc workflow action/worker.


Method Summary
 java.util.List<Task> createRunOnceTasks(java.util.Map<java.lang.String,Bucket> inputBuckets, java.util.Map<java.lang.String,Bucket> outputBuckets, java.util.Map<java.lang.String,java.lang.String> parameters, java.lang.String workerName)
          Creates tasks for the RunOnce mode, i.e.
 java.util.List<Task> createTasks(java.util.Map<java.lang.String,java.util.List<BulkInfo>> changedInput, java.util.Map<java.lang.String,Bucket> inputBuckets, java.util.Map<java.lang.String,Bucket> outputBuckets, java.util.Map<java.lang.String,java.lang.String> parameters, java.lang.String workerName)
           
 void finishTask(Task task, TaskCompletionStatus taskState)
           
 java.lang.String getName()
           
 void validateParameters(java.util.Map<java.lang.String,java.lang.String> parameters)
          Check complex parameters in some task generators if desired.
 

Method Detail

getName

java.lang.String getName()
Returns:
name of generator, it is used in Worker descriptions to select the generator.

createTasks

java.util.List<Task> createTasks(java.util.Map<java.lang.String,java.util.List<BulkInfo>> changedInput,
                                 java.util.Map<java.lang.String,Bucket> inputBuckets,
                                 java.util.Map<java.lang.String,Bucket> outputBuckets,
                                 java.util.Map<java.lang.String,java.lang.String> parameters,
                                 java.lang.String workerName)
                                 throws TaskGeneratorException
Parameters:
changedInput - key: slot containing added bulks, value: added bulks
inputBuckets - key: input slot name, value: bucket for this slot
outputBuckets - key: output slot name, value: bucket for this slot
parameters - key: param name, value: (evaluated) param value
workerName - (action) worker for which to create new tasks
Returns:
a list of new generated tasks
Throws:
TaskGeneratorException - error while generating tasks

finishTask

void finishTask(Task task,
                TaskCompletionStatus taskState)
                throws TaskGeneratorException
Parameters:
task - The task to be cleaned up
taskState - TODO
Throws:
TaskGeneratorException - error while cleaning up for finished task

createRunOnceTasks

java.util.List<Task> createRunOnceTasks(java.util.Map<java.lang.String,Bucket> inputBuckets,
                                        java.util.Map<java.lang.String,Bucket> outputBuckets,
                                        java.util.Map<java.lang.String,java.lang.String> parameters,
                                        java.lang.String workerName)
                                        throws TaskGeneratorException
Creates tasks for the RunOnce mode, i.e. for all objects in the input bucket of the start action.

Parameters:
inputBuckets - key: input slot name, value: bucket for this slot
outputBuckets - key: output slot name, value: bucket for this slot
parameters - key: param name, value: (evaluated) param value
workerName - (action) worker for which to create new tasks
Returns:
a list of new generated tasks
Throws:
TaskGeneratorException - error while generating tasks

validateParameters

void validateParameters(java.util.Map<java.lang.String,java.lang.String> parameters)
                        throws TaskGeneratorException
Check complex parameters in some task generators if desired. Do nothing if no check desired.

Parameters:
parameters - The map with the parameters
Throws:
TaskGeneratorException - an exception if something is wrong with the parameters

SMILA (incubation) API documentation