Flow control processors enable dynamic routing, conditional logic, and nested execution within transmission pipelines. These processors allow transmissions to make decisions about their execution path based on message content or configuration.
The Transmissions framework provides several flow control mechanisms:
The GOTO processor enables dynamic transmission execution, allowing one transmission to trigger another based on configuration or message properties.
The Choice processor provides conditional logic within transmission pipelines, enabling branching behavior based on message properties.
The EntryTransmission type controls which transmissions execute automatically when an app starts.
Flow control processors are designed as discrete, composable units that can be combined to create complex behaviors.
All flow control decisions are based on message content, configuration, or both, ensuring predictable and testable behavior.
New flow control features maintain compatibility with existing transmission definitions and execution patterns.
The flow control architecture supports adding new processors and control mechanisms without breaking existing functionality.
Use descriptive transmission and processor names that indicate their role in the flow.
Avoid deep nesting of GOTOs to maintain readability and debuggability.
Establish consistent property naming patterns for flow control decisions.
Design flow control with failure modes in mind, including fallback paths and error conditions.
Create focused test cases for each flow control scenario, including edge cases and error conditions.