Package com.dtolabs.rundeck.core.rules
Interface WorkflowSystem<P>
-
- All Known Subinterfaces:
StateWorkflowSystem
- All Known Implementing Classes:
WorkflowEngine
public interface WorkflowSystem<P>
Process a set of Operations, by use of a RuleEngine to determine when/if operations should run, and by updating a shared state object with new state changes returned by each operation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
WorkflowSystem.Operation<X,T extends WorkflowSystem.OperationCompleted>
An operation which returns a success result objectstatic interface
WorkflowSystem.OperationCompleted<T>
Indicates an operation completed, supplies a new set of state data to update the mutable state withstatic interface
WorkflowSystem.OperationResult<D,T extends WorkflowSystem.OperationCompleted<D>,X extends WorkflowSystem.Operation<D,T>>
Return type which contains either a success result, or a failure throwable, and includes the original operationstatic interface
WorkflowSystem.SharedData<T,Y>
Manages shared data, consumes results of operations, and produces input for subsequent operations
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
isInterrupted()
<D,T extends WorkflowSystem.OperationCompleted<D>,X extends WorkflowSystem.Operation<D,T>>
java.util.Set<WorkflowSystem.OperationResult<D,T,X>>processOperations(java.util.Set<X> operations, WorkflowSystem.SharedData<D,P> shared)
Process the operations and return results when all runnable operations are complete.
-
-
-
Method Detail
-
processOperations
<D,T extends WorkflowSystem.OperationCompleted<D>,X extends WorkflowSystem.Operation<D,T>> java.util.Set<WorkflowSystem.OperationResult<D,T,X>> processOperations(java.util.Set<X> operations, WorkflowSystem.SharedData<D,P> shared)
Process the operations and return results when all runnable operations are complete.- Type Parameters:
T
- success result of an operationX
- operation classD
- shared data type- Parameters:
operations
- operations- Returns:
- set of results for all processed operations
-
isInterrupted
boolean isInterrupted()
- Returns:
- true if the previous call to
processOperations(Set, SharedData)
stopped due to interruption
-
-