You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2019/05/22 08:50:52 UTC
[camel] branch camel-2.22.x updated: CAMEL-13476:
QuartzScheduledPollConsumerScheduler should not remove trigger when quartz
is clustered
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-2.22.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-2.22.x by this push:
new 02f4920 CAMEL-13476: QuartzScheduledPollConsumerScheduler should not remove trigger when quartz is clustered
02f4920 is described below
commit 02f4920334de39ad8f9e85c98fe365e0404483d3
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Wed May 22 10:48:05 2019 +0200
CAMEL-13476: QuartzScheduledPollConsumerScheduler should not remove trigger when quartz is clustered
---
.../quartz2/QuartzScheduledPollConsumerScheduler.java | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/components/camel-quartz2/src/main/java/org/apache/camel/pollconsumer/quartz2/QuartzScheduledPollConsumerScheduler.java b/components/camel-quartz2/src/main/java/org/apache/camel/pollconsumer/quartz2/QuartzScheduledPollConsumerScheduler.java
index 02a813d..1b39a8f 100644
--- a/components/camel-quartz2/src/main/java/org/apache/camel/pollconsumer/quartz2/QuartzScheduledPollConsumerScheduler.java
+++ b/components/camel-quartz2/src/main/java/org/apache/camel/pollconsumer/quartz2/QuartzScheduledPollConsumerScheduler.java
@@ -59,6 +59,7 @@ public class QuartzScheduledPollConsumerScheduler extends ServiceSupport impleme
private String triggerId;
private String triggerGroup = "QuartzScheduledPollConsumerScheduler";
private TimeZone timeZone = TimeZone.getDefault();
+ private boolean deleteJob = true;
private volatile CronTrigger trigger;
private volatile JobDetail job;
@@ -155,6 +156,14 @@ public class QuartzScheduledPollConsumerScheduler extends ServiceSupport impleme
this.triggerGroup = triggerGroup;
}
+ public boolean isDeleteJob() {
+ return deleteJob;
+ }
+
+ public void setDeleteJob(boolean deleteJob) {
+ this.deleteJob = deleteJob;
+ }
+
@Override
protected void doStart() throws Exception {
ObjectHelper.notEmpty(cron, "cron", this);
@@ -252,9 +261,12 @@ public class QuartzScheduledPollConsumerScheduler extends ServiceSupport impleme
@Override
protected void doStop() throws Exception {
- if (trigger != null) {
- LOG.debug("Unscheduling trigger: {}", trigger.getKey());
- quartzScheduler.unscheduleJob(trigger.getKey());
+ if (trigger != null && deleteJob) {
+ boolean isClustered = quartzScheduler.getMetaData().isJobStoreClustered();
+ if (!quartzScheduler.isShutdown() && !isClustered) {
+ LOG.info("Deleting job {}", trigger.getKey());
+ quartzScheduler.unscheduleJob(trigger.getKey());
+ }
}
}