147.4. スケジュールされたポーリングコンシューマー
このコンポーネントは、ScheduledPollConsumer を実装します。指定された consumeUsers からの最後のメッセージのみが取得され、エクスチェンジボディーとして送信されます。次のポーリングで新しいメッセージがないときに同じメッセージを再度取得したくない場合は、以下に示すようにべき等コンシューマーを追加できます。ScheduledPollConsumer のすべてのオプションを使用して、コンシューマーをより詳細に制御することもできます。
@Override
public void configure() throws Exception {
String hipchatEndpointUri = "hipchat://?authToken=XXXX&consumeUsers=@Joe,@John";
from(hipchatEndpointUri)
.idempotentConsumer(
simple("${in.header.HipchatMessageDate} ${in.header.HipchatFromUser}"),
MemoryIdempotentRepository.memoryIdempotentRepository(200)
)
.to("mock:result");
}147.4.1. Hipchat コンシューマーによって設定されたメッセージヘッダー
| ヘッダー | 定数 | タイプ | 説明 |
|---|---|---|---|
| HipchatFromUser | HipchatConstants.FROM_USER | String | 本文には、このユーザーから authToken の所有者に送信されたメッセージが含まれています |
| HipchatMessageDate | HipchatConstants.MESSAGE_DATE | String | メッセージが送信された日付。形式は、Hipchat の レスポンス にある ISO-8601 です。 |