A flow is a bunch of steps and the connection between the steps. So a flow is a directed graph. The edges are the connections between the steps. The vertex is the step. A flow has inbound and outbound steps and processing steps. A flow must fulfill the following requirements:
- It must have a name.
- It must have a description.
- It must have at least one inbound step.
- All the steps must have at least one connection.
- All steps must be reachable from the inbound steps.
A Flow may also have endpoints which could be connected to the steps. So it is possible to bundle steps in a flow. From the outside the flows acts as a single step.
Extends Step
This is the flow implementation. It holds all the steps. Declares the following properties: -steps -autostart
Parameters
Find endpoint for given expression
Parameters
Returns Endpoint found endpoint
set the target endpoints
Parameters
stepDefinition
A flow has only endpoint proxies. These will be replaced by the original endpoints of the sub steps get the original endpoints for the Flow.
Returns string 'kronos-flow'
mixin to create a Flow owner. Also incorporates Step and Interceptor ownership
Parameters
superclass
class
Returns class with flow ownership support
Deletes a flow from the stored flow definitions. If the flow is currently running, it will be stopped first. After it is stopped, it will be deleted.
Parameters
flow
Returns Promise returns a promise that is fullfilled when the flow is removed or one that rejects if there is no flow for the given flowName
With npm do:
npm install kronos-flow
BSD-2-Clause