Route Editor Patterns

Endpoints

Table 1 lists the endpoint patterns available from the route editor's palette.

Table 1. Endpoints

IconNameUse
Endpoint Acts as either a message source or message sink
Bean Binds beans to Camel message exchanges
Log Creates log messages using the Simple language
Process Process the message using a custom processor

Routing

Table 2 describe the routing patterns available from the route editor palette.

Table 2. Message Routing

IconNameUse
Aggregate Aggregates many messages into a single message
Choice Routes messages based on a series of predicates. (This is one of three components that make up a content-based router.)
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. (This is one of three components that make up a content-based router.)
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 Splits a message into pieces that can processed separately
When Triggers a route when an expression evaluates to true. (This is one of three components that make up a content-based router.)
Wire Tap Routes a copy of a message to a secondary destination while passing the original message to the actual recipient

Control flow

Table 3 describes the control flow patterns available from the route editor palette.

Table 3. Control flow

IconNameUse
Catch Catches exceptions as part of a try, catch, finally block
Delay Delays processing for a set length of time
Finally Node traversed when a try, catch, finally block exits
Intercept Intercepts messages at each step in the message flow
Intercept From Intercepts incoming messages
Intercept Send to Endpoint Intercepts messages sent to a specified 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 transacted route by throwing RollbackExchangeException
Throttle Controls the number of messages passed to the next node in a given time period
Throw Exception Throws an exception
Transacted Marks route as a transaction
Try Marks the beginning of a try, catch, finally block

Transformation

Table 4 describes the transformation patterns available from the route editor palette.

Table 4. Transformation

IconNameUse Case
Convert Body Converts the message body to a form usable by the next endpoint
Enrich Enriches a message with data retrieved by a producer from a secondary resource
InOnly One way exchange pattern where no response is produced (Event Message pattern)
InOut Exchange pattern where a response is produced
Marshal Marshals data into a 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 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 from the wire into a bean that Apache Camel processors can consume

Miscellaneous

Table 5 describes the patterns on the Miscellaneous section of the palette.

Table 5. Miscellaneous

IconNameUse
AOP Does processing before and after the route is completed. (This pattern is deprecated in Apache Camel.)
Policy Defines a policy the route will use
Sampling Extract a sample of the exchanges passing through a route
Stop Stops processing of the current message
Threads Specifies that all steps after this node are processed asynchronously
Validate Validates a message based on an expression