use of org.jenkinsci.plugins.workflow.steps.BodyExecution in project workflow-cps-plugin by jenkinsci.
the class ParallelStepExecution method start.
@Override
public boolean start() throws Exception {
CpsStepContext cps = (CpsStepContext) getContext();
if (parallelStep.closures.isEmpty()) {
cps.get(TaskListener.class).getLogger().println("No branches to run");
cps.onSuccess(Collections.<String, Object>emptyMap());
return true;
}
CpsThread t = CpsThread.current();
ResultHandler r = new ResultHandler(cps, this, parallelStep.isFailFast());
for (Entry<String, Closure> e : parallelStep.closures.entrySet()) {
BodyExecution body = cps.newBodyInvoker(t.getGroup().export(e.getValue())).withStartAction(new ParallelLabelAction(e.getKey())).withCallback(r.callbackFor(e.getKey())).start();
bodies.add(body);
}
return false;
}
Aggregations