import org.apache.commons.lang.math.RandomUtils;
import org.argeo.slc.SlcException;
+import org.argeo.slc.core.structure.tree.TreeSPath;
+import org.argeo.slc.core.structure.tree.TreeSRegistry;
import org.argeo.slc.execution.Executable;
import org.argeo.slc.execution.ExecutionFlow;
import org.argeo.slc.execution.ExecutionSpec;
import org.argeo.slc.execution.ExecutionSpecAttribute;
+import org.argeo.slc.structure.StructureAware;
+import org.argeo.slc.structure.StructureRegistry;
import org.argeo.slc.test.ExecutableTestRun;
import org.springframework.beans.factory.BeanNameAware;
import org.springframework.beans.factory.InitializingBean;
private Map<String, Object> parameters = new HashMap<String, Object>();
private List<Executable> executables = new ArrayList<Executable>();
+ private String path;
+ private StructureRegistry<TreeSPath> registry = new TreeSRegistry();
+
public DefaultExecutionFlow() {
}
if (errors.hasErrors())
throw new SlcException("Could not prepare execution flow: "
+ errors.toString());
+
+// if (path == null) {
+// path = "/" + executionSpec.getName() + "/" + name;
+// }
+
+ for (Executable executable : executables) {
+ if (executable instanceof StructureAware) {
+ ((StructureAware<TreeSPath>) executable).notifyCurrentPath(
+ registry, new TreeSPath(path));
+ }
+ }
}
public void setBeanName(String name) {
public boolean equals(Object obj) {
return ((ExecutionFlow) obj).getName().equals(name);
}
+
+ public String getPath() {
+ return path;
+ }
+
+
}