All Downloads are FREE. Search and download functionalities are using the official Maven repository.

fit.decorator.CopyAndAppendLastRow Maven / Gradle / Ivy

package fit.decorator;

import fit.Fixture;
import fit.Parse;
import fit.decorator.exceptions.InvalidInputException;
import fit.decorator.util.Table;

public class CopyAndAppendLastRow extends FixtureDecorator {
  public static final String NUMBER_OF_TIMES = "numberOfTimes";
  private int numberOfTimes;

  @Override
  protected void run(Fixture fixture, Parse table) {
    Table t = new Table(table);
    t.copyAndAppendLastRow(numberOfTimes);
    super.run(fixture, t.table());
  }

  @Override
  protected void setupDecorator(String[] arguments) throws InvalidInputException {
    if (arguments.length != 1) {
      throw new InvalidInputException("Count for number of times to add the last row must be specified");
    }
    numberOfTimes = Integer.parseInt(arguments[0]);
    summary.put(NUMBER_OF_TIMES, new Integer(numberOfTimes));
  }

  @Override
  protected void updateColumnsBasedOnResults(Parse table) {
    // Nothing to do
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy