public class AggregatingMessageHandler extends AbstractCorrelatingMessageHandler
AbstractCorrelatingMessageHandler
.
Will remove MessageGroup
s in the afterRelease(org.springframework.integration.store.MessageGroup, java.util.Collection<org.springframework.messaging.Message<?>>)
only if 'expireGroupsUponCompletion' flag is set to 'true'.AbstractCorrelatingMessageHandler.SequenceAwareMessageGroup
IntegrationManagement.ManagementOverrides
messagingTemplate
EXPRESSION_PARSER, logger
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
Constructor and Description |
---|
AggregatingMessageHandler(MessageGroupProcessor processor) |
AggregatingMessageHandler(MessageGroupProcessor processor,
MessageGroupStore store) |
AggregatingMessageHandler(MessageGroupProcessor processor,
MessageGroupStore store,
CorrelationStrategy correlationStrategy,
ReleaseStrategy releaseStrategy) |
Modifier and Type | Method and Description |
---|---|
protected void |
afterRelease(MessageGroup messageGroup,
Collection<Message<?>> completedMessages)
Complete the group and remove all its messages.
|
IntegrationPatternType |
getIntegrationPatternType()
Return a pattern type this component implements.
|
protected boolean |
isExpireGroupsUponCompletion() |
void |
setExpireGroupsUponCompletion(boolean expireGroupsUponCompletion)
Will set the 'expireGroupsUponCompletion' flag.
|
afterRelease, completeGroup, completeGroup, destroy, expireGroup, findLastReleasedSequenceNumber, forceComplete, getComponentType, getCorrelationStrategy, getDiscardChannel, getDiscardChannelName, getEvaluationContext, getExpireGroupScheduledFutures, getGroupTimeoutExpression, getLockRegistry, getMessageStore, getMinimumTimeoutForEmptyGroups, getOutputProcessor, getReleaseStrategy, handleMessageInternal, isLockRegistrySet, isReleaseLockBeforeSend, isReleasePartialSequences, isRunning, isSendPartialResultOnExpiry, isSequenceAware, obtainGroupTimeout, onInit, purgeOrphanedGroups, remove, setApplicationEventPublisher, setCorrelationStrategy, setDiscardChannel, setDiscardChannelName, setExpireDuration, setExpireDurationMillis, setExpireGroupsUponTimeout, setExpireTimeout, setForceReleaseAdviceChain, setGroupTimeoutExpression, setLockRegistry, setMessageStore, setMinimumTimeoutForEmptyGroups, setOutputProcessor, setPopSequence, setReleaseLockBeforeSend, setReleasePartialSequences, setReleaseStrategy, setSendPartialResultOnExpiry, start, stop, store, verifyResultCollectionConsistsOfMessages
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders
handleMessage, onComplete, onError, onNext, onSubscribe
buildSendTimer, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
handleMessage
getThisAs
getBeanName, getComponentName
public AggregatingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store, CorrelationStrategy correlationStrategy, ReleaseStrategy releaseStrategy)
public AggregatingMessageHandler(MessageGroupProcessor processor, MessageGroupStore store)
public AggregatingMessageHandler(MessageGroupProcessor processor)
public void setExpireGroupsUponCompletion(boolean expireGroupsUponCompletion)
expireGroupsUponCompletion
- true when groups should be expired on completion.afterRelease(org.springframework.integration.store.MessageGroup, java.util.Collection<org.springframework.messaging.Message<?>>)
public IntegrationPatternType getIntegrationPatternType()
IntegrationPattern
getIntegrationPatternType
in interface IntegrationPattern
getIntegrationPatternType
in class MessageHandlerSupport
IntegrationPatternType
this component implements.protected boolean isExpireGroupsUponCompletion()
isExpireGroupsUponCompletion
in class AbstractCorrelatingMessageHandler
protected void afterRelease(MessageGroup messageGroup, Collection<Message<?>> completedMessages)
expireGroupsUponCompletion
is true, then remove group fully.afterRelease
in class AbstractCorrelatingMessageHandler
messageGroup
- the group to clean up.completedMessages
- The completed messages. Ignored in this implementation.