| Splitter |
Pattern Catalog | ||
| Site Home Patterns Home Table of Contents |
Many messages passing through an integration solution consist of multiple elements. For example, an order placed by a customer consists of more than just a single line item. As outlined in the description of the Content-Based Router, each line item may need to be handled by a different inventory system. Thus, we need to find an approach to process a complete order, but treat each order item contained in the order individually.
How can we process a message if it contains multiple elements, each of which may have to be processed in a different way?

Use a Splitter to break out the composite message into a series of individual messages, each containing data related to one item.
use a Splitter that consumes one message containing a list of repeating elements, each of which can be processed individually. The Splitter publishes a one message for each single element (or a subset of elements) from the original message.
...Related patterns: Aggregator, Content-Based Router, Content Filter, Correlation Identifier, Envelope Wrapper, Event-Driven Consumer, Pipes and Filters, Publish-Subscribe Channel
|
Find the full description of this pattern in: Gregor Hohpe and Bobby Woolf ISBN 0321200683 650 pages Addison-Wesley |
| Parts of this page are available under the license. You can reuse the pattern icon, the pattern name, the problem and solution statements (in bold), and the sketch under this license. Other portions of the text, such as text chapters or the full pattern text, are protected by copyright. |
| Home Patterns Table of Contents |
| © 2003 Bobby Woolf All rights reserved. |