-
- function to execute with inputs matched to input labels and outputs to output labels. By the time it is called, all inputs were validated and action is in runnable flow state.
For representing the action
For representing the action
Action has the responsibility of assessing itself and produce DataFlowActionState, that will be used by the executors to determine if they can call performAction or not.
Action has the responsibility of assessing itself and produce DataFlowActionState, that will be used by the executors to determine if they can call performAction or not. Also can be used for progress monitoring. This will allow for more custom actions without modifying the executors
- action will study the state of the inputs in order to generate self assessment
- an instance of the DataFlowActionState
Unique id of the action, but using it for adding behaviours can be problematic due to Interceptors that are defined at a much later stage.
Unique id of the action, but using it for adding behaviours can be problematic due to Interceptors that are defined at a much later stage. Because of that ActionSchedulers must NOT use this guid.
-
-
The unique identifiers for the outputs to this action
The unique identifiers for the outputs to this action
Perform the action.
Perform the action. Puts inputs into a map and invokes the exec function.
the DataFlowEntities corresponding to the inputLabels
the action outputs (these must be declared in the same order as their labels in outputLabels)
Perform the action
Perform the action
the DataFlowEntities corresponding to the inputLabels
context of the flow in which this action runs
the action outputs (these must be declared in the same order as their labels in outputLabels)
This action can only be executed if all of the inputs are not empty.
This action can only be executed if all of the inputs are not empty. An input can be explicitly marked as empty. If false, than one or more inputs can be empty to start execution.
Interceptors must not override this property, as certain behaviours of the data flow (Ex, execution pools) will be associated with this scheduling guid.
Interceptors must not override this property, as certain behaviours of the data flow (Ex, execution pools) will be associated with this scheduling guid. Also ActionScheduler will use this guid to track scheduled actions.
Instances of this class build a bridge between OOP part of the Waimak engine and functional definition of the data flow.
Created by Alexei Perelighin on 03/11/17.