📄️ Executing Logic
Workflows4s supports two ways of embedding custom logic within a workflow:
📄️ Awaiting Signals
Signal handling is essential for workflows that need to pause and wait for external events before proceeding. This operation allows workflows to respond to user actions, system notifications, or other asynchronous events, making it ideal for human-in-the-loop processes or integration with external systems.
📄️ Awaiting Time
Timers are crucial for workflows that need to introduce delays, implement timeouts, or schedule future actions.
📄️ Sequencing Operations
Sequencing operations form the backbone of workflow composition, allowing you to define the order in which steps are executed. These operations enable you to build complex workflows by combining simpler ones, ensuring that each step completes before the next begins.
📄️ Handling Errors
Error handling is critical for building robust workflows that can handle non-happy paths. It allows for short-circuiting operations
📄️ Loops
Loops are essential for workflows that need to repeat actions until a condition is met. This operation enables iterative processing, such as retrying operations, processing collections of items, or implementing polling mechanisms that continue until specific criteria are satisfied.
📄️ Fork
Fork operations enable workflows to select a branch based on a criteria.
📄️ Interrupting
Interruption operations are crucial for workflows that need to respond to cancellation requests or timeout conditions.
📄️ Parallel
WIO.Parallel allows running multiple branches simultaneously, enabling scenarios such as waiting for a mix of signals and timers without enforcing a particular order.
📄️ Embedding Sub-Workflows
Embedding one workflow in another is supported but not documented yet.
📄️ Checkpointing and Recovery
Elements described below are used primarily for evolving workflows, see the dedicated docs for details.