39.12. 使用 QuartzScheduledPollConsumerScheduler
Quartz 组件提供了一个 Polling Consumer 调度程序,它允许对 Polling Consumer (如文件和 FTP 用户)使用基于 cron 的调度。
例如,要使用基于 cron 的表达式每秒轮询一次文件,可将 Camel 路由定义为:
    from("file:inbox?scheduler=quartz&scheduler.cron=0/2+*+*+*+*+?")
       .to("bean:process");
    from("file:inbox?scheduler=quartz&scheduler.cron=0/2+*+*+*+*+?")
       .to("bean:process");
				请注意,我们定义 scheduler=quartz 以指示 Camel 使用基于 Quartz 的调度程序。然后,我们使用 scheduler.xxx 选项来配置调度程序。Quartz 调度程序需要设置 cron 选项。
			
支持以下选项:
| 参数 | 默认 | 类型 | 描述 | 
|---|---|---|---|
| 
								 | 
								 | 
								 | 使用自定义 Quartz 调度程序。如果没有配置,则使用来自组件的共享调度程序。 | 
| 
								 | 
								 | 
								 | Mandatory :定义用于触发轮询的 cron 表达式。 | 
| 
								 | 
								 | 
								 | 指定触发器 id。如果未提供,则生成和使用 UUID。 | 
| 
								 | 
								 | 
								 | 指定触发器组。 | 
| 
								 | 
								 | 
								 | 用于 CRON 触发器的时区。 | 
					记住从端点 URI 配置这些选项必须使用 调度程序 作为前缀。
				
例如,配置 trigger id 和 group :
    from("file:inbox?scheduler=quartz&scheduler.cron=0/2+*+*+*+*+?&scheduler.triggerId=myId&scheduler.triggerGroup=myGroup")
       .to("bean:process");
    from("file:inbox?scheduler=quartz&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");
    from("file:inbox?scheduler=spring&scheduler.cron=0/2+*+*+*+*+?")
       .to("bean:process");