319.6. サポートクラス
コンポーネントとは別に、Camel Spring Batch は、Spring Batch インフラストラクチャーにフックするために使用できるサポートクラスも提供します。
319.6.1. CamelItemReader リンクのコピーリンクがクリップボードにコピーされました!
CamelItemReader を
使用して、Camel インフラストラクチャーから直接バッチデータを読み取ることができます。
たとえば、以下のスニペットは、JMS キューからデータを読み取るように Spring Batch を設定します。
319.6.2. CamelItemWriter リンクのコピーリンクがクリップボードにコピーされました!
CamelItemWriter
は CamelItemReader
と同様の目的を持っていますが、処理されたデータのチャンクを書き込む専用です。
たとえば、以下のスニペットは、JMS キューからデータを読み取るように Spring Batch を設定します。
319.6.3. CamelItemProcessor リンクのコピーリンクがクリップボードにコピーされました!
CamelItemProcessor
は、Spring Batch org.springframework.batch.item.ItemProcessor
インターフェイスの実装です。後者の実装は、Request Reply パターン を中継して、バッチアイテムの処理を Camel インフラストラクチャーに委譲します。処理するアイテムは、メッセージの本文として Camel エンドポイントに送信されます。
たとえば、以下のスニペットは、Direct エンドポイント と Simple 式言語 を使用して、バッチアイテムの簡単な処理を実行します。
319.6.4. CamelJobExecutionListener リンクのコピーリンクがクリップボードにコピーされました!
CamelJobExecutionListener
は、ジョブ実行イベントを Camel エンドポイントに送信する org.springframework.batch.core.JobExecutionListener
インターフェイスの実装です。
Spring Batch によって生成された org.springframework.batch.core.JobExecution
インスタンスは、メッセージのボディーとして送信されます。コールバックの前後を区別するには、SPRING_BATCH_JOB_EVENT_TYPE
ヘッダーを BEFORE
または AFTER の
値に設定します。
以下のスニペットの例では、Spring Batch ジョブ実行イベントを JMS キューに送信します。