package org.molgenis.compute.pipelinemodel; import java.util.Vector; //step is a bunch of scripts public class Step { private String id = null; private Vector<Script> scripts = new Vector(); // for execution monitoring private boolean isFinished = false; private boolean isActive = false; private int scriptsStarted = 0; private int scriptsFinished = 0; // step serial number private int stepNumber = -1; public Step(String id) { this.id = id; } public Step() { } public void addScript(Script newScript) { scripts.add(newScript); } public Script getScript(int i) { return scripts.elementAt(i); } public int getNumberOfScripts() { return scripts.size(); } public String getId() { return id; } public void setId(String id) { this.id = id; } public void addScripts(Vector<Script> scripts) { this.scripts.addAll(scripts); } public boolean isFinished() { return isFinished; } public void setFinished(boolean finished) { isFinished = finished; } public boolean isActive() { return isActive; } public void setActive(boolean active) { isActive = active; } public int getScriptsStarted() { return scriptsStarted; } public void setScriptsStarted(int scriptsStarted) { this.scriptsStarted = scriptsStarted; } public int getScriptsFinished() { return scriptsFinished; } public void setScriptsFinished(int scriptsFinished) { this.scriptsFinished = scriptsFinished; } public Script getScript(String id) { for (int i = 0; i < scripts.size(); i++) { Script script = scripts.elementAt(i); if (script.getID().equalsIgnoreCase(id)) return script; } return null; } @Override public String toString() { return "\nnumber: " + stepNumber + " size: " + scripts.size() + " {\n" + ", id='" + id + '\'' + "\nscripts=" + scripts + '}'; } public void setNumber(int stepNumber) { this.stepNumber = stepNumber; } }