public class ResequencingMessageHandler extends AbstractCorrelatingMessageHandler
AbstractCorrelatingMessageHandler.
Will remove MessageGroups only if 'sequenceSize' is provided and reached.AbstractCorrelatingMessageHandler.SequenceAwareMessageGroupmessageStoremessagingTemplateHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE| Constructor and Description |
|---|
ResequencingMessageHandler(MessageGroupProcessor processor) |
ResequencingMessageHandler(MessageGroupProcessor processor,
MessageGroupStore store) |
ResequencingMessageHandler(MessageGroupProcessor processor,
MessageGroupStore store,
CorrelationStrategy correlationStrategy,
ReleaseStrategy releaseStrategy) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
afterRelease(MessageGroup messageGroup,
Collection<Message<?>> completedMessages)
Allows you to provide additional logic that needs to be performed after the MessageGroup was released.
|
protected void |
afterRelease(MessageGroup messageGroup,
Collection<Message<?>> completedMessages,
boolean timeout)
Subclasses may override if special action is needed because the group was released or discarded
due to a timeout.
|
void |
setExpireGroupsUponTimeout(boolean expireGroupsUponTimeout)
Expire (completely remove) a group if it is completed due to timeout.
|
completeGroup, completeGroup, destroy, expireGroup, findLastReleasedSequenceNumber, forceComplete, getComponentType, getCorrelationStrategy, getDiscardChannel, getDiscardChannelName, getEvaluationContext, getExpireGroupScheduledFutures, getGroupTimeoutExpression, getLockRegistry, getMessageStore, getMinimumTimeoutForEmptyGroups, getOutputProcessor, getReleaseStrategy, handleMessageInternal, isLockRegistrySet, isReleasePartialSequences, isSendPartialResultOnExpiry, isSequenceAware, obtainGroupTimeout, onInit, setApplicationEventPublisher, setCorrelationStrategy, setDiscardChannel, setDiscardChannelName, setForceReleaseAdviceChain, setGroupTimeoutExpression, setIntegrationEvaluationContext, setLockRegistry, setMessageStore, setMinimumTimeoutForEmptyGroups, setReleasePartialSequences, setReleaseStrategy, setSendPartialResultOnExpiry, setTaskScheduler, store, verifyResultCollectionConsistsOfMessagesgetOutputChannel, produceOutput, sendOutputs, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutputconfigureMetrics, getActiveCount, getActiveCountLong, getDuration, getErrorCount, getErrorCountLong, getHandleCount, getHandleCountLong, getManagedName, getManagedType, getMaxDuration, getMeanDuration, getMinDuration, getOrder, getStandardDeviationDuration, handleMessage, isCountsEnabled, isLoggingEnabled, isStatsEnabled, reset, setCountsEnabled, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, setStatsEnabledafterPropertiesSet, extractTypeIfPossible, getApplicationContext, getApplicationContextId, getBeanFactory, getChannelResolver, getComponentName, getConversionService, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetComponentNamepublic ResequencingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store, CorrelationStrategy correlationStrategy, ReleaseStrategy releaseStrategy)
public ResequencingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store)
public ResequencingMessageHandler(MessageGroupProcessor processor)
public void setExpireGroupsUponTimeout(boolean expireGroupsUponTimeout)
setExpireGroupsUponTimeout in class AbstractCorrelatingMessageHandlerexpireGroupsUponTimeout - the expireGroupsUponTimeout to setprotected void afterRelease(MessageGroup messageGroup, Collection<Message<?>> completedMessages)
AbstractCorrelatingMessageHandlerafterRelease in class AbstractCorrelatingMessageHandlermessageGroup - The group.completedMessages - The completed messages.protected void afterRelease(MessageGroup messageGroup, Collection<Message<?>> completedMessages, boolean timeout)
AbstractCorrelatingMessageHandlerAbstractCorrelatingMessageHandler.afterRelease(MessageGroup, Collection) is invoked.afterRelease in class AbstractCorrelatingMessageHandlermessageGroup - The group.completedMessages - The completed messages.timeout - True if the release/discard was due to a timeout.