]>
git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.api/src/org/argeo/slc/execution/ExecutionProcess.java
1 package org
.argeo
.slc
.execution
;
6 * A process is the functional representation of a combination of executions.
7 * While an execution is the actual java code running, a process exists before,
8 * during and after the execution actually took place, providing an entry point
9 * for the definition of executions, their monitoring (e.g. logging) and
10 * tracking. A process can be distributed or parallelized. <br/>
11 * NEW => INITIALIZED => SCHEDULED => RUNNING<br/>
12 * RUNNING => {COMPLETED | ERROR | KILLED}<br/>
13 * {COMPLETED | ERROR | KILLED} => PURGED<br/>
14 * UNKOWN : this is a bug if this status occurs<br/>
16 public interface ExecutionProcess
{
17 /** The process is not yet usable. */
18 public final static String NEW
= "NEW";
19 /** The process is usable but not yet scheduled to run. */
20 public final static String INITIALIZED
= "INITIALIZED";
21 /** The process is usable and scheduled to run, but not yet running. */
22 public final static String SCHEDULED
= "SCHEDULED";
23 /** The process is currently running. */
24 public final static String RUNNING
= "RUNNING";
25 /** The process has properly completed. */
26 public final static String COMPLETED
= "COMPLETED";
27 /** The process failed because of an unexpected error. */
28 public final static String ERROR
= "ERROR";
29 /** The process was killed explicitly or through a crash. */
30 public final static String KILLED
= "KILLED";
31 /** The status cannot be retrieved (probably because of unexpected errors). */
32 public final static String UNKOWN
= "UNKOWN";
35 * Only a reference to the process has been kept, all monitoring data such
36 * as logs have been purged.
38 public final static String PURGED
= "PURGED";
40 /** The UUID of this process. */
41 public String
getUuid();
43 /** The current status of this process. */
44 public String
getStatus();
46 /** Sets the current status of this process */
47 public void setStatus(String status
);
49 public void addSteps(List
<ExecutionStep
> steps
);
51 public List
<RealizedFlow
> getRealizedFlows();