269.2. 选项
Quartz 组件支持 8 个选项,如下所列。
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
factory (advanced) | 使用自定义 SchedulerFactory,用于创建调度程序。 | SchedulerFactory | |
scheduler (advanced) | 要使用配置的 Quartz 调度程序,而不是创建新的调度程序。 | scheduler | |
properties (consumer) | 配置 Quartz 调度程序的属性。 | Properties | |
propertiesFile (consumer) | 从 classpath 加载的属性的文件名 | 字符串 | |
startDelayedSeconds (scheduler) | 启动 quartz 调度程序前等待的秒数。 | int | |
autoStartScheduler (consumer) | 调度程序是否应自动启动。这个选项默认为 true | true | 布尔值 |
enableJmx (consumer) | 是否启用 Quartz JMX,允许从 JMX 管理 Quartz 调度程序。这个选项默认为 true | true | 布尔值 |
resolveProperty Placeholders (advanced) | 启动时组件是否应解析自身上的属性占位符。只有属于 String 类型的属性才能使用属性占位符。 | true | 布尔值 |
Quartz 端点使用 URI 语法进行配置:
quartz:groupName/timerName
使用以下路径和查询参数:
269.2.1. 路径参数(2 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
groupName | 要使用的 quartz 组名称。组名称和计时器名称的组合应该是唯一的。 | Camel | 字符串 |
timerName | 必需 要使用的 quartz 计时器名称。组名称和计时器名称的组合应该是唯一的。 | 字符串 |
269.2.2. 查询参数(13 参数):
名称 | 描述 | 默认值 | 类型 |
---|---|---|---|
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由错误处理程序,这意味着当消费者试图选择传入消息或类似信息时发生异常,现在将作为消息处理并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.ExceptionHandler 来处理例外情况,该处理程序将被记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
cron (consumer) | 指定定义何时触发的 cron 表达式。 | 字符串 | |
deleteJob (consumer) | 如果设置为 true,则触发器会在路由停止时自动删除。否则,如果设为 false,它将保留在调度程序中。当设置为 false 时,这也意味着用户也可以使用 camel Uri 重复使用预先配置的触发器。只需确保名称匹配。请注意,您无法同时将 deleteJob 和 pauseJob 设置为 true。 | true | 布尔值 |
fireNow (consumer) | 是否在开始使用简单触发器时触发 SAP (此选项不支持 cron) | false | 布尔值 |
pauseJob (consumer) | 如果设置为 true,则触发器会在路由停止时自动暂停。否则,如果设为 false,它将保留在调度程序中。当设置为 false 时,这也意味着用户也可以使用 camel Uri 重复使用预先配置的触发器。只需确保名称匹配。请注意,您无法同时将 deleteJob 和 pauseJob 设置为 true。 | false | 布尔值 |
startDelayedSeconds (consumer) | 启动 quartz 调度程序前等待的秒数。 | int | |
stateful (consumer) | 使用 Quartz StatefulJob 而不是默认作业。 | false | 布尔值 |
usingFixedCamelContextName (consumer) | 如果为 true,JobDataMap 使用 CamelContext 名称直接引用 CamelContext,如果为 false,则 JobDataMap 使用 CamelContext 管理名称,该名称可以在部署时更改。 | false | 布尔值 |
exceptionHandler (consumer) | 要让使用者使用自定义例外处理程序:请注意,如果启用了 bridgeErrorHandler 选项,则此选项不使用。默认情况下,消费者将处理异常,其记录在 WARN 或 ERROR 级别中,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在消费者创建交换时设置交换模式。 | ExchangePattern | |
jobParameters (advanced) | 要在作业上配置附加选项。 | Map | |
同步 (advanced) | 设置是否应严格使用同步处理,或者 Camel 允许使用异步处理(如果受支持)。 | false | 布尔值 |
triggerParameters (advanced) | 要在触发器上配置附加选项。 | Map |
使用 StatefulJob 时,在每次执行作业后,JobDataMap 都会重新有持久性,从而保留下一个执行的状态。
INFO: 在 OSGi 中运行 quartz 并使用 quartz 路由的多个捆绑包 (如 Apache ServiceMix 或 Apache Karaf),并且有多个带有 Camel 路由的捆绑包,则请确保为从 Quartz 端点开始的 Camel 路由分配
的 id
到 <camelContext> 的 ID 是唯一的,因为 QuartzScheduler
容器需要它。如果您没有在 <camelContext> 中设置任何 id
,则
一个唯一 id 被自动分配,且没有问题。