255.10. Using QuartzScheduledPollConsumerScheduler
Quartz2 コンポーネントは、File や FTP コンシューマーなどのポーリングコンシューマーに cron ベースのスケジューリングを使用できる Polling Consumer スケジューラーを提供します。
たとえば、2 秒あたりに cron ベースの式を使用してファイルをポーリングするには、Camel ルートを以下のように定義できます。
from("file:inbox?scheduler=quartz2&scheduler.cron=0/2+*+*+*+*+?") .to("bean:process");
scheduler=quartz2
を定義して、Camel に Quartz2 ベースのスケジューラーを使用するように指示します。次に、scheduler.xxx
オプションを使用してスケジューラーを設定します。Quartz2 スケジューラーでは、cron オプションを設定する必要があります。
以下のオプションがサポートされます。
パラメーター | デフォルト | Type | 説明 |
---|---|---|---|
|
|
| カスタムの Quartz スケジューラーを使用するには、以下を行います。設定されていない場合は、Quartz2 コンポーネントから共有スケジューラーが使用されます。 |
|
|
| 必須: ポーリングをトリガーする cron 式を定義します。 |
|
|
| トリガー ID を指定します。指定がない場合は UUID が生成され、使用されます。 |
|
|
| トリガーグループを指定します。 |
|
|
| CRON トリガーに使用するタイムゾーン。 |
重要: エンドポイント URI からこれらのオプションを設定する場合は、scheduler をプレフィックスとして指定してください。
たとえば、トリガー ID およびグループを設定するには、以下を実行します。
from("file:inbox?scheduler=quartz2&scheduler.cron=0/2+*+*+*+*+?&scheduler.triggerId=myId&scheduler.triggerGroup=myGroup") .to("bean:process");
Spring には CRON スケジューラーもあります。そのため、以下を使用することもできます。
from("file:inbox?scheduler=spring&scheduler.cron=0/2+*+*+*+*+?") .to("bean:process");