Spring Integration

org.springframework.integration.aggregator
Class ResequencingMessageHandler

java.lang.Object
  extended by org.springframework.integration.context.IntegrationObjectSupport
      extended by org.springframework.integration.handler.AbstractMessageHandler
          extended by org.springframework.integration.aggregator.AbstractCorrelatingMessageHandler
              extended by org.springframework.integration.aggregator.ResequencingMessageHandler
All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.InitializingBean, org.springframework.core.Ordered, NamedComponent, Orderable, MessageHandler, MessageProducer, TrackableComponent

public class ResequencingMessageHandler
extends AbstractCorrelatingMessageHandler

Resequencer specific implementation of AbstractCorrelatingMessageHandler. Will remove MessageGroups only if 'sequenceSize' is provided and reached.

Since:
2.1
Author:
Oleg Zhurakousky

Field Summary
 
Fields inherited from class org.springframework.integration.aggregator.AbstractCorrelatingMessageHandler
DEFAULT_SEND_TIMEOUT, messageStore
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
ResequencingMessageHandler(MessageGroupProcessor processor)
           
ResequencingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store)
           
ResequencingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store, CorrelationStrategy correlationStrategy, ReleaseStrategy releaseStrategy)
           
 
Method Summary
protected  void afterRelease(MessageGroup messageGroup, java.util.Collection<Message<?>> completedMessages)
          Allows you to provide additional logic that needs to be performed after the MessageGroup was released.
 
Methods inherited from class org.springframework.integration.aggregator.AbstractCorrelatingMessageHandler
findLastReleasedSequenceNumber, getComponentType, getMessageStore, handleMessageInternal, onInit, setCorrelationStrategy, setDiscardChannel, setLockRegistry, setMessageStore, setMinimumTimeoutForEmptyGroups, setOutputChannel, setReleasePartialSequences, setReleaseStrategy, setSendPartialResultOnExpiry, setSendTimeout
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
getOrder, handleMessage, setOrder, setShouldTrack
 
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.integration.context.NamedComponent
getComponentName
 

Constructor Detail

ResequencingMessageHandler

public ResequencingMessageHandler(MessageGroupProcessor processor,
                                  MessageGroupStore store,
                                  CorrelationStrategy correlationStrategy,
                                  ReleaseStrategy releaseStrategy)

ResequencingMessageHandler

public ResequencingMessageHandler(MessageGroupProcessor processor,
                                  MessageGroupStore store)

ResequencingMessageHandler

public ResequencingMessageHandler(MessageGroupProcessor processor)
Method Detail

afterRelease

protected void afterRelease(MessageGroup messageGroup,
                            java.util.Collection<Message<?>> completedMessages)
Description copied from class: AbstractCorrelatingMessageHandler
Allows you to provide additional logic that needs to be performed after the MessageGroup was released.

Specified by:
afterRelease in class AbstractCorrelatingMessageHandler

Spring Integration