アノテーションインターフェース Aggregator
@TargetSE({METHODSE,ANNOTATION_TYPESE})
@RetentionSE(RUNTIMESE)
@DocumentedSE
@RepeatableSE(Aggregators.class)
public @interface Aggregator
メソッドがメッセージを集約できることを示します。
@Aggregator アノテーションが付けられたメソッドは、メッセージまたはメッセージペイロードのコレクションを受け入れる場合があり、メッセージペイロードとして使用される単一のメッセージまたは単一のオブジェクトを返す必要があります。
- 作成者:
- Marius Bogoevici, Oleg Zhurakousky, Artem Bilan, Chris Bono
オプション要素のサマリー
オプション要素修飾子と型オプションの要素説明SmartLifecycle
autoStartup
オプション。SmartLifecycle
phase
オプションを指定します。期限切れになったメッセージを集約して、メッセージヘッダーからoutputChannel()
またはreplyChannel
のどちらに送信するかを指定します。応答Message
をoutputChannel()
に送信するときに待機する最大時間をミリ秒単位で指定します。
要素の詳細
inputChannel
StringSE inputChannel- 戻り値:
- 集約されるメッセージを受信するためのチャネル名
- デフォルト:
- ""
outputChannel
StringSE outputChannel- 戻り値:
- 集約された結果メッセージを送信するためのチャネル名
- デフォルト:
- ""
discardChannel
StringSE discardChannel- 戻り値:
- 破棄されたメッセージを送信するためのチャネル名 (タイムアウトによる)
- デフォルト:
- ""
sendTimeout
StringSE sendTimeout応答Message
をoutputChannel()
に送信するときに待機する最大時間をミリ秒単位で指定します。デフォルトは30
秒です。これは、出力チャンネルに何らかの「送信」制限がある場合にのみ適用されます。QueueChannel
は「容量」が固定されており、現在いっぱいです。この場合、MessageDeliveryException
がスローされます。AbstractSubscribableChannel
実装の場合、"sendTimeout" は無視されます。「プロパティプレースホルダ」として指定できます。${spring.integration.sendTimeout}
。- 戻り値:
- 結果を応答ターゲットに送信するためのタイムアウト (ミリ秒単位)
- デフォルト:
- ""
sendPartialResultsOnExpiry
StringSE sendPartialResultsOnExpiry期限切れのメッセージを集約して、メッセージヘッダーからoutputChannel()
またはreplyChannel
に送信するかどうかを指定します。メッセージは、メッセージに含まれるMessageGroup
の有効期限が切れると期限切れになります。MessageGroups を期限切れにする方法の 1 つは、MessageGroupStoreReaper
を構成することです。ただし、MessageGroups は、MessageGroupStore.expireMessageGroup(groupId)
を呼び出すだけで期限切れにすることもできます。これは、ControlBus 操作を介して、またはMessageGroupStore
インスタンスへの参照がある場合は単にそのメソッドを呼び出すことによって実現できます。デフォルトはfalse
です。* 「プロパティプレースホルダ」として指定できます。${spring.integration.sendPartialResultsOnExpiry}
。- 戻り値:
- メッセージグループの満了時に不完全な集約を送信するかどうかを示します
- デフォルト:
- ""
autoStartup
StringSE autoStartup- 戻り値:
- 自動起動
boolean
フラグ。
- デフォルト:
- ""
phase
StringSE phaseSmartLifecycle
phase
オプションを指定します。デフォルトは、PollingConsumer
の場合はInteger.MAX_VALUE / 2
、EventDrivenConsumer
の場合はInteger.MIN_VALUE
です。「プロパティプレースホルダー」として指定できます。例:${foo.phase}
。- 戻り値:
SmartLifecycle
フェーズ。
- デフォルト:
- ""
poller
Poller poller- 戻り値:
- ポーリングされたエンドポイント (
PollerMetadata
) のPoller
オプション。reactive()
とは相互に排他的です。
- デフォルト:
- @org.springframework.integration.annotation.Poller("\n\t\t\n\t\t\n\ue000\ue001\ue002\n\t\t\t\t\n")
reactive
Reactive reactive- デフォルト:
- @org.springframework.integration.annotation.Reactive("\n \ t \ t \n \ t \ t \n \ ue000 \ ue001 \ ue002 \n \ t \ t \ t \ t \n")