Enterprise Integration Pattern Reference


Table of Contents

Route Editor Patterns
Endpoints
Endpoint — Act as either a message source or a message sink
Bean — Binds a bean to Camel message exchanges
Log — Creates log messages using the Simple language
Process — Process the message using a custom processor
Routing
Aggregate — Aggregates many messages into a single message
Choice — Routes messages based on a series of predicates
Dynamic Router — Routes messages based on rules specified by the recipients at start up
Filter — Filters messages before passing them to a resource
Idempotent Consumer — Filters out duplicate messages
Load Balance — Balances message processing among a number of nodes
Multicast — Routes a message to a number of endpoints
Otherwise — Route to be executed when all other choices evaluate to false
Pipeline — Executes a sequence of processors in order
Recipient List — Routes messages to a number of dynamically specified recipients
Resequence — Resequences messages based on an expression
Routing Slip — Routes a message through a series of steps that are determined at runtime
Sort — Sorts the contents of the message
Split — Sorts the contents of the message
When — Triggers a route when an expression evaluates to true
Wire Tap — Routes a copy of a message to a secondary destination while passing the original message to the actual recipient, or it creates a new message and passes that to the recipient.
Control Flow
Catch — Catches exceptions as part of a try, catch, finally block
Delay — Delays processing for a specified length of time
Finally — Node traversed when a try, catch, finally block exits
Intercept — Intercepts a message at each step in the route
Intercept From — Intercepts incoming messages
Intercept Send To Endpoint — Intercepts messages sent to an endpoint
Loop — Processes a message multiple times
On Completion — Route to be executed when normal route processing completes
On Exception — Route to be executed when an exception is thrown
Rollback — Forces a rollback of a route
Throttle — Controls the rate at which messages are passed to the next node in the route
Throw Exception — Throws an exception
Transacted — Marks a route as a transaction
Try — Marks the beginning of a Try, Catch, Finally block
Transformation
Convert Body — Converts the message body to a form usable by the next endpoint
Enrich — Enriches a message with data from a secondary resource
In Only — Marks the exchange pattern for the route to one way (Event Message pattern)
In Out — Marks the exchange pattern for the route to request/reply
Marshal — Marshals data into a specified format for transmission over a transport or component
Poll Enrich — Enriches messages with data retrieved from a polling consumer
Remove Header — Removes a named header from the message
Remove Headers — Removes message headers whose name matches a specified pattern
Remove Property — Removes a named property from the message exchange
Set Body — Sets the contents of the message body
Set Exchange Pattern — Sets the exchange pattern for the route
Set Fault Body — Sets the contents of a fault message's body
Set Header — Sets the value of a message header
Set Out Header — Sets the value of a header on the outbound message
Set Property — Sets a named property on the message exchange
Transform — Transforms the message based on an expression
Unmarshal — Converts the message data received from the wire into a format that Apache Camel processors can consume
Miscellaneous
AOP — Does processing before and/or after the route is completed
Policy — Defines a policy the route will use
Sampling — Extract a sample of the exchanges passing through a route
Stop — Stops the processing of the current message
Threads — Specifies that all steps after this node are processed asynchronously
Validate — Validates a message based on an expression
Route Icon