Ballerina usage patterns and best practices for implementing enterprise integrations. These patterns are based on the Enterprise Integration Patterns book by Gregor Hohpe and Bobby Woolf. Each sample is a simplified version of a real-world integration scenario.

Content Enricher icon
Content Enricher

Add data to message

Content EnricherMessage ChannelMessage EndpointMessage

Content Filter icon
Content Filter

Remove data from message

Content FilterMessage ChannelMessage Endpoint

Document Message icon
Document Message

Transfer data to another application

Document MessageMessage ChannelMessage EndpointPoint-to-Point ChannelRequest-Reply

Message Router icon
Message Router

Route messages to different output channels

Message RouterMessage ChannelMessage EndpointMessage

Message Sequence icon
Message Sequence

Send large data sets in chunks

Message SequenceMessage ChannelMessage EndpointMessage

Message Store icon
Message Store

Capture message information in a central location

Message StoreMessage ChannelWire TapMessage EndpointMessage

Messaging Bridge icon
Messaging Bridge

Connect messaging systems

Messaging BridgeMessage ChannelMessage EndpointChannel AdapterMessage

Normalizer icon
Normalizer

Process messages with different formats

NormalizerMessage ChannelMessage EndpointMessage TranslatorMessage RouterMessage

Scatter-Gather icon
Scatter-Gather

Send messages to multiple recipients and re-aggregate the responses

Scatter-GatherAggregatorMessage ChannelMessage EndpointMessage RouterMessage

Wire Tap icon
Wire Tap

Publish to a secondary channel for inspection

Wire TapMessage ChannelMessage Endpoint