GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Table of Contents
  • Preface
  • Introduction
  • Solving Integration Problems using Patterns
  • Integration Styles
  • File Transfer
  • Shared Database
  • Remote Procedure Invocation
  • Messaging
  • Messaging Systems
  • Message Channel
  • Message
  • Pipes and Filters
  • Message Router

This view

  • Original page
  • New address

GeezerVison is showing www.enterpriseintegrationpatterns.com — Claim Check - Enterprise Integration Patterns

Enterprise Integration Patterns
Messaging Patterns
HOME PATTERNS RAMBLINGS ARTICLES TALKS DOWNLOAD BOOKS CONTACT
Messaging Patterns
    • Table of Contents
    • Preface
    • Introduction
    • Solving Integration Problems using Patterns
  • Integration Styles
    • File Transfer
    • Shared Database
    • Remote Procedure Invocation
    • Messaging
  • Messaging Systems
    • Message Channel
    • Message
    • Pipes and Filters
    • Message Router
    • Message Translator
    • Message Endpoint
  • Messaging Channels
    • Point-to-Point Channel
    • Publish-Subscribe Channel
    • Datatype Channel
    • Invalid Message Channel
    • Dead Letter Channel
    • Guaranteed Delivery
    • Channel Adapter
    • Messaging Bridge
    • Message Bus
  • Message Construction
    • Command Message
    • Document Message
    • Event Message
    • Request-Reply
    • Return Address
    • Correlation Identifier
    • Message Sequence
    • Message Expiration
    • Format Indicator
  • Interlude: Simple Messaging
    • JMS Request/Reply Example
    • .NET Request/Reply Example
    • JMS Publish/Subscribe Example
  • Message Routing
    • Content-Based Router
    • Message Filter
    • Dynamic Router
    • Recipient List
    • Splitter
    • Aggregator
    • Resequencer
    • Composed Msg. Processor
    • Scatter-Gather
    • Routing Slip
    • Process Manager
    • Message Broker
  • Message Transformation
    • Envelope Wrapper
    • Content Enricher
    • Content Filter
    • Claim Check
    • Normalizer
    • Canonical Data Model
  • Interlude: Composed Messaging
    • Synchronous (Web Services)
    • Asynchronous (MSMQ)
    • Asynchronous (TIBCO)
  • Messaging Endpoints
    • Messaging Gateway
    • Messaging Mapper
    • Transactional Client
    • Polling Consumer
    • Event-Driven Consumer
    • Competing Consumers
    • Message Dispatcher
    • Selective Consumer
    • Durable Subscriber
    • Idempotent Receiver
    • Service Activator
  • System Management
    • Control Bus
    • Detour
    • Wire Tap
    • Message History
    • Message Store
    • Smart Proxy
    • Test Message
    • Channel Purger
  • Interlude: Systems Management Example
    • Instrumenting Loan Broker
  • Integration Patterns in Practice
    • Case Study: Bond Trading System
  • Concluding Remarks
    • Emerging Standards
  • Appendices
    • Bibliography
    • Revision History
Claim CheckClaim CheckMessaging Patterns » Message Transformation
Contents⇐ PrevNext ⇒

The Content Enricher tells us how we can deal with situations where our message is missing required data items. The Content Filter lets us remove uninteresting data items from a message. Sometimes, we want to remove fields only temporarily. For example, a message may contain a set of data items that may be needed later in the message flow, but that are not necessary for all intermediate processing steps. We may not want to carry all this information through each processing step because it may cause performance degradation and makes debugging harder because we carry so much extra data.

How can we reduce the data volume of message sent across the system without sacrificing information content?

Store message data in a persistent store and pass a Claim Check to subsequent components. These components can use the Claim Check to retrieve the stored information.

The Claim Check pattern consists of the following steps:

  1. A message with data arrives.
  2. The "Check Luggage" component generates a unique key for the information. This key will be used later as the Claim Check
  3. The Check Luggage component extracts the data from the message and stores it in a persistent store, e.g. a file or a database. It associates the stored data with the key .
  4. It removes the persisted data from the message and adds the Claim Check.
  5. Another component can use a Content Enricher to retrieve the data based on the Claim Check.

This process is analogous to a luggage check at the airport. If you do not want to carry all your luggage with you, you simply check it with the airline counter. In return you receive a sticker on your ticket that has a reference number that uniquely identifies each piece of luggage you checked. Once you reach your final destination, you can retrieve your luggage.

... Read the entire pattern in the book Enterprise Integration Patterns

Related patterns:

Content Filter, Content Enricher, Process Manager


Integration Pattern Language

Message Construct.
Message
Command Message
Document Message
Event Message
Request-Reply
Return Address
Correlation Identifier
Message Sequence
Message Expiration
Format Indicator
Message Routing
Pipes-and-Filters
Message Router
Content-based Router
Message Filter
Dynamic Router
Recipient List
Splitter
Aggregator
Resequencer
Composed Msg. Processor
Scatter-Gather
Routing Slip
Process Manager
Message Broker
Message
Transformation
Message Translator
Envelope Wrapper
Content Enricher
Content Filter
Claim Check
Normalizer
Canonical Data Model
Messaging Endpoints
Message Endpoint
Messaging Gateway
Messaging Mapper
Transactional Client
Polling Consumer
Event-driven Consumer
Competing Consumers
Message Dispatcher
Selective Consumer
Durable Subscriber
Idempotent Receiver
Service Activator
Messaging Channels
Message Channel
Point-to-Point Channel
Publish-Subscr. Channel
Datatype Channel
Invalid Message Channel
Dead Letter Channel
Guaranteed Delivery
Channel Adapter
Messaging Bridge
Message Bus
Systems Mgmt.
Control Bus
Detour
Wire Tap
Message History
Message Store
Smart Proxy
Test Message
Channel Purger
  • » Read the latest in My Blog
  • » Get more insights from My Articles
  • » See me live in my Upcoming Talks
Creative Commons Attribution License

You can reuse the following elements under the Creative Commons Attribution license: pattern icon, pattern name, problem and solution statements (in bold), and the sketch. Other portions are protected by copyright.

Enterprise Integration Patterns book cover

Enterprise Integration Patterns
The de-facto language for designing asynchronous, distributed systems. Over 100,000 copies sold.

Software Architect Elevator book cover

The Software Architect Elevator
Rethink the role of architects as a connecting element across organizational layers. Acquire the technical, communication, and organizational skills to succeed in this new role.

Cloud Strategy book cover

Cloud Strategy
Make your cloud migration a success by translating high-level goals into conscious decisions with well-understood trade-offs.

Platform Strategy book cover

Platform Strategy
Platforms can boost innovation through harmonization, but they aren't easy to build. Learn from over a decade of designing and rolling out IT platforms.

© 2003, 2023 • Bobby Woolf • All rights reserved.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.