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, 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