X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=runtime%2Forg.argeo.slc.specs%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fexecution%2FExecutionProcess.java;h=447ef7f982c054fe3da0b3c348f875a2a8525ed7;hb=c0535626dd8ffabb6fc4df4e8a47465e908ba953;hp=35a84fb7b7a6af94d266ee0abdc432a4be66470e;hpb=9bab32638cc6a08ba96c3feca190733e9d1ac0ac;p=gpl%2Fargeo-slc.git
diff --git a/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/execution/ExecutionProcess.java b/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/execution/ExecutionProcess.java
index 35a84fb7b..447ef7f98 100644
--- a/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/execution/ExecutionProcess.java
+++ b/runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/execution/ExecutionProcess.java
@@ -1,11 +1,17 @@
package org.argeo.slc.execution;
+import java.util.List;
+
/**
* A process is the functional representation of a combination of executions.
* While an execution is the actual java code running, a process exists before,
* during and after the execution actually took place, providing an entry point
* for the definition of executions, their monitoring (e.g. logging) and
- * tracking. A process can be distributed or parallelized.
+ * tracking. A process can be distributed or parallelized.
+ * NEW => INITIALIZED => SCHEDULED => RUNNING
+ * RUNNING => {COMPLETED | ERROR | KILLED}
+ * {COMPLETED | ERROR | KILLED} => PURGED
+ * UNKOWN : this is a bug if this status occurs
*/
public interface ExecutionProcess {
/** The process is not yet usable. */
@@ -20,6 +26,11 @@ public interface ExecutionProcess {
public final static String COMPLETED = "COMPLETED";
/** The process failed because of an unexpected error. */
public final static String ERROR = "ERROR";
+ /** The process was killed explicitly or through a crash. */
+ public final static String KILLED = "KILLED";
+ /** The status cannot be retrieved (probably because of unexpected errors). */
+ public final static String UNKOWN = "UNKOWN";
+
/**
* Only a reference to the process has been kept, all monitoring data such
* as logs have been purged.
@@ -34,4 +45,6 @@ public interface ExecutionProcess {
/** Sets the current status of this process */
public void setStatus(String status);
+
+ public void addSteps(List steps);
}