private void executeSubTasks (TaskExecution aTask, List<PipelineTask> aSubTasks, MapContext aContext) throws Exception {
    for(PipelineTask subTask : aSubTasks) {
      SimpleTaskExecution subTaskExecution = new SimpleTaskExecution(subTask.asMap());
      subTaskExecution.setId(UUIDGenerator.generate());
      subTaskExecution.setJobId(aTask.getJobId());
      TaskExecution evaluatedTask = taskEvaluator.evaluate(subTaskExecution, aContext);
      SimpleTaskExecution completion = doExecuteTask(evaluatedTask);
      if(completion.getName() != null) {
        aContext.set(completion.getName(), completion.getOutput());
      }
    }
  }
Handle control tasks. Control tasks are used by the Coordinator
to control Worker instances. For example to stop an ongoing task
or to adjust something on a worker outside the context of a job.
src/main/java/com/creactiviti/piper/core/Worker.java