org.springframework.integration.aggregator
Class DefaultMessageAggregator

java.lang.Object
  extended by org.springframework.integration.handler.AbstractMessageHandler
      extended by org.springframework.integration.aggregator.AbstractMessageBarrierHandler<java.util.List<Message<?>>>
          extended by org.springframework.integration.aggregator.AbstractMessageAggregator
              extended by org.springframework.integration.aggregator.DefaultMessageAggregator
All Implemented Interfaces:
org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean, org.springframework.core.Ordered, MessageHandler

public class DefaultMessageAggregator
extends AbstractMessageAggregator

The Default Message Aggregator implementation that combines a group of messages into a single message containing a List of all payloads. The elements of the List are in order of their receiving. Any MessageHeader value is ignored except the correlationId.

The default strategy for determining whether a group is complete is based on the 'sequenceSize' property of the header. Alternatively, a custom implementation of the CompletionStrategy may be provided.

All considerations regarding timeout and grouping by correlationId from AbstractMessageBarrierHandler apply here as well.

Since:
1.0.3
Author:
Alex Peters

Field Summary
 
Fields inherited from class org.springframework.integration.aggregator.AbstractMessageBarrierHandler
barriers, DEFAULT_REAPER_INTERVAL, DEFAULT_SEND_TIMEOUT, DEFAULT_TIMEOUT, DEFAULT_TRACKED_CORRRELATION_ID_CAPACITY, logger, trackedCorrelationIds
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
DefaultMessageAggregator()
           
 
Method Summary
protected  Message<?> aggregateMessages(java.util.List<Message<?>> messages)
          
 
Methods inherited from class org.springframework.integration.aggregator.AbstractMessageAggregator
createMessageBarrier, processBarrier, setCompletionStrategy
 
Methods inherited from class org.springframework.integration.aggregator.AbstractMessageBarrierHandler
afterPropertiesSet, canAddMessage, discardBarrier, handleMessageInternal, isRunning, removeBarrier, resolveReplyChannelFromMessage, sendReplies, sendReply, setAutoStartup, setBeanFactory, setCorrelationStrategy, setDiscardChannel, setOutputChannel, setReaperInterval, setSendPartialResultOnTimeout, setSendTimeout, setTaskScheduler, setTimeout, setTrackedCorrelationIdCapacity, start, stop
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
getOrder, handleMessage, resolveReplyChannel, setOrder
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultMessageAggregator

public DefaultMessageAggregator()
Method Detail

aggregateMessages

protected Message<?> aggregateMessages(java.util.List<Message<?>> messages)

Specified by:
aggregateMessages in class AbstractMessageAggregator