package gui.processing; import java.util.Iterator; @SuppressWarnings("serial") public class StepCommandComponent extends CommandComponent { public static final String COMMAND_NAME = "step"; private String[] fileNames; public StepCommandComponent(String[] fileNames) { super(COMMAND_NAME); this.fileNames = fileNames; addInitialFileRowPanel(); } @Override protected CommandFileRow buildCommandFileRow() { return new StepFileRow(fileNames); } @Override public ProcessParameters[] getProcessParameters() { StepParameters[] parameters = new StepParameters[commandFileRowPanelStack.size()]; Iterator<CommandFileRowPanel> fileRowIterator = commandFileRowPanelStack.iterator(); for(int i = 0; fileRowIterator.hasNext(); i++) { StepFileRow currentFileRow = (StepFileRow) fileRowIterator.next().getFileRow(); parameters[i] = buildProcessParameters(currentFileRow); } return parameters; } private StepParameters buildProcessParameters(StepFileRow fileRow) { String infile = fileRow.getInFile(); String outfile = fileRow.getOutFile(); int stepSize = fileRow.getStepSize(); return new StepParameters(infile, outfile, stepSize); } }