org.springframework.integration.annotation
Annotation Type Aggregator


@Target(value=METHOD)
@Retention(value=RUNTIME)
@Documented
public @interface Aggregator

Indicates that a method is capable of aggregating messages.

A method annotated with @Aggregator may accept a collection of Messages or Message payloads and should return a single Message or a single Object to be used as a Message payload.

Author:
Marius Bogoevici

Optional Element Summary
 java.lang.String discardChannel
          channel name for sending discarded messages (due to a timeout)
 java.lang.String inputChannel
          channel name for receiving messages to be aggregated
 java.lang.String outputChannel
          channel name for sending aggregated result messages
 long reaperInterval
          interval for the task that checks for timed-out aggregates
 boolean sendPartialResultsOnTimeout
          indicates whether to send an incomplete aggregate on timeout
 long sendTimeout
          timeout for sending results to the reply target (in milliseconds)
 long timeout
          maximum time to wait for completion (in milliseconds)
 int trackedCorrelationIdCapacity
          maximum number of correlation IDs to maintain so that received messages may be recognized as belonging to an aggregate that has already completed or timed out
 

inputChannel

public abstract java.lang.String inputChannel
channel name for receiving messages to be aggregated

Default:
""

outputChannel

public abstract java.lang.String outputChannel
channel name for sending aggregated result messages

Default:
""

discardChannel

public abstract java.lang.String discardChannel
channel name for sending discarded messages (due to a timeout)

Default:
""

sendTimeout

public abstract long sendTimeout
timeout for sending results to the reply target (in milliseconds)

Default:
1000L

timeout

public abstract long timeout
maximum time to wait for completion (in milliseconds)

Default:
60000L

sendPartialResultsOnTimeout

public abstract boolean sendPartialResultsOnTimeout
indicates whether to send an incomplete aggregate on timeout

Default:
false

reaperInterval

public abstract long reaperInterval
interval for the task that checks for timed-out aggregates

Default:
1000L

trackedCorrelationIdCapacity

public abstract int trackedCorrelationIdCapacity
maximum number of correlation IDs to maintain so that received messages may be recognized as belonging to an aggregate that has already completed or timed out

Default:
1000