// Executes actions step by step. Individually invoke the init()->run()->destroy() sequence.
Iterator<WorkflowActionSpecification> iterator = workflowSpec.getActions().iterator();
int step = 0;
while (running && iterator.hasNext()) {
WorkflowActionSpecification actionSpec = iterator.next();
workflowStatus = new WorkflowStatus(state(), actionSpec, step++);
WorkflowAction action = initialize(actionSpec, classLoader, instantiator);
try {
action.run();
} catch (Throwable t) {