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

fit.decorator.IncrementColumnsValue Maven / Gradle / Ivy

package fit.decorator;

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

public class IncrementColumnsValue extends FixtureDecorator {

  public static final String COLUMN_NAME = "columnName";
  public static final String DELTA = "delta";
  private String columnName;
  private Delta delta;

  @Override
  protected void setupDecorator(String[] arguments) throws InvalidInputException {
    if (arguments.length != 3) {
      throw new InvalidInputException("Column name, Data type and Delta Value must be specified");
    }
    columnName = arguments[0];
    delta = new Delta(arguments[1], arguments[2]);
    summary.put(COLUMN_NAME, columnName);
    summary.put(DELTA, delta);
  }

  @Override
  protected void run(Fixture fixture, Parse table) {
    Table t = new Table(table);
    try {
      table = t.incrementColumnValuesByDelta(columnName, delta);
    } catch (InvalidInputException e) {
      // exception(table, e);
    }
    super.run(fixture, table);
  }

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




© 2015 - 2024 Weber Informatics LLC | Privacy Policy