package fit.decorator;
import fit.Fixture;
import fit.Parse;
import fit.decorator.exceptions.InvalidInputException;
public class Loop extends FixtureDecorator {
public static final String COUNT = "count";
private int counter;
@Override
protected void run(Fixture fixture, Parse table) {
for (int i = 0; i < counter; i++) {
super.run(fixture, table);
}
}
@Override
protected void setupDecorator(String[] arguments) throws InvalidInputException {
if (arguments.length != 1) {
throw new InvalidInputException("Loop count must be specified");
}
counter = Integer.parseInt(arguments[0]);
summary.put(COUNT, new Long(counter));
}
@Override
protected void updateColumnsBasedOnResults(Parse table) {
// Nothing to do
}
}