A reactive pipeline composes asynchronous processing stages into a sequence of continuations. Each stage runs when the previous stage emits an item, and events—including results, completion, and failures—move downstream. Stages can transform, filter, drop, or produce events. The pipeline begins only when a subscriber requests it. section 8.2.2
In Quarkus, SmallRye Mutiny provides the Uni and Multi types and their fluent APIs for defining pipelines. Uni represents one item or failure, while Multi represents streams that may produce multiple items. section 8.2.2 section 8.7
A pipeline commonly combines stages that:
- Transform emitted items, such as converting strings to uppercase or appending text. section 8.2.2
- Observe intermediate events without changing them, such as printing each item before passing it downstream. section 8.2.2
- Filter items and react to completion before delivering results to a subscriber. section 8.2.2
Filtering a Mutiny stream
A Multi emitting "a", "b", and "c" can uppercase each item, print an intermediate message, append " item", filter values beginning with "B", print completion, and subscribe to the remaining results. The subscriber receives "A item" and "C item". section 8.2.2
Figure 8.5 The reactive pipeline visualization in Mutiny
Use the pipeline visualization to trace how emitted events pass through successive Mutiny stages. section 8.2.2















































