Table of Contents

The workflow nested inside GroupWorkflow specifies the entire behavior of this operator. Group nodes are used to organize larger workflows into modular building blocks. For most purposes, moving operations into a group workflow will not have any effects on the performance or function of the program.

All observable sequences passed as arguments to the outer GroupWorkflow will be routed to the inner WorkflowInput nodes. Conversely, all notifications emitted by the sequence connected to the single WorkflowOutput node will be passed to any observers of the group node. It is possible to subscribe multiple times to the same group, in which case the nested workflow will run potentially in parallel and is considered to be reentrant.

Tip

Use ExternalizedMapping operators to expose configurable properties when selecting the nested workflow node. Externalized properties in a nested workflow work the same way as regular properties in other operators. They can be further externalized as part of other nested operators or dynamically assigned using PropertyMapping or InputMapping operators.

Warning

If the nested workflow is reentrant, properties of inner nodes are shared by all asynchronous operations which are running simultaneously. If the shared state never changes across reentrant operations (i.e. the state is immutable), this is not a problem. If shared state is changing dynamically, you should consider using synchronization primitives to make sure that state updates are coordinated across the different asynchronous operations.