]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.specs/src/main/java/org/argeo/slc/execution/ExecutionProcess.java
Clean up warnings
[gpl/argeo-slc.git] / runtime / org.argeo.slc.specs / src / main / java / org / argeo / slc / execution / ExecutionProcess.java
index 35a84fb7b7a6af94d266ee0abdc432a4be66470e..447ef7f982c054fe3da0b3c348f875a2a8525ed7 100644 (file)
@@ -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. <br/>
+ * NEW => INITIALIZED => SCHEDULED => RUNNING<br/>
+ * RUNNING => {COMPLETED | ERROR | KILLED}<br/>
+ * {COMPLETED | ERROR | KILLED} => PURGED<br/>
+ * UNKOWN : this is a bug if this status occurs<br/>
  */
 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<ExecutionStep> steps);
 }