package net.tuis.ubench; /** * ExecutionModel that runs all of the first task, then all of the next, and so * on. * * @author rolf * */ class SequentialExecutionModel implements TaskExecutionModel { @Override public UStats[] executeTasks(String suite, TaskRunner...tasks) { UStats[] results = new UStats[tasks.length]; for (int i = 0; i < tasks.length; i++) { boolean complete = false; TaskRunner task = tasks[i]; do { complete = task.invoke(); } while (!complete); results[i] = task.collect(suite); } return results; } }