Class TimeoutCountSequenceSizeReleaseStrategy
java.lang.Object
org.springframework.integration.aggregator.TimeoutCountSequenceSizeReleaseStrategy
- All Implemented Interfaces:
ReleaseStrategy
A
ReleaseStrategy
that releases all messages if any of the following is true:
- The sequence is complete (if there is one).
- There are more messages than a threshold set by the user.
- The time elapsed since the earliest message, according to their timestamps, if present, exceeds a timeout set by the user.
- Since:
- 2.0
- Author:
- Dave Syer, Gary Russell, Peter Uhlenbruck
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Default threshold is effectively infinite.static final long
Default timeout is one minute. -
Constructor Summary
-
Method Summary
-
Field Details
-
DEFAULT_TIMEOUT
public static final long DEFAULT_TIMEOUTDefault timeout is one minute.- See Also:
-
DEFAULT_THRESHOLD
public static final int DEFAULT_THRESHOLDDefault threshold is effectively infinite.- See Also:
-
-
Constructor Details
-
TimeoutCountSequenceSizeReleaseStrategy
public TimeoutCountSequenceSizeReleaseStrategy() -
TimeoutCountSequenceSizeReleaseStrategy
public TimeoutCountSequenceSizeReleaseStrategy(int threshold, long timeout) - Parameters:
threshold
- the number of messages to accept before releasingtimeout
- the timeout for the release in milliseconds
-
-
Method Details
-
canRelease
- Specified by:
canRelease
in interfaceReleaseStrategy
-