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); }