Overview
To reuse an Actionflow, the action nodes within it can be extracted.
In order to make actions re-usable (this will be important when we have API actions for example) we will need to wrap them in an action flow and then re-use the flow. To make this easier we need a wizard to take an action (or group of actions) on a model and quickly convert them to a nested action flow.
This wizard would have to:
automatically create the action flow
move all the actions into the action flow (preferably laid out as they are in the original model)
create all of the necessary input and output connection points and connection point attributes on the action flow to correspond to the connection points on the actions within it
Wire up the action flow connection points to the internal actions and map the attributes
Connect anything that was on the original diagram that connected to a moved action to the appropriate connection point of the action flow that has replaced it.
Added the ability to extract actions to a new actionflow in the actionflow node context menu. This will create a new actionflow and transfer all selected nodes into that actionflow. All extracted nodes must be connected and not include any start phase nodes. If a start loop is extracted its corresponding end loop must be extracted too and vice-versa.
logic that ensures that we have a valid subset of actions e.g. it can’t include a start loop node without the end loop node.
Can’t include phases
You must selected all nodes between any two connected nodes
You can’t select a start envelope without the end envelope
Passthrough attributes need mapping at the interface of the new nested action
You cannot extract subsets from different loops
New Actionflow Setup
After the Actionflow has been extracted, the newly created Actionflow retains the original action nodes but contains the input of the original actionflow.
Original Actionflow Setup
The action nodes on the original actionflow are replaced with an embedded actionflow node. See Actionflow Node Properties.