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 2017/03/28 09:38:28 UTC
[2/2] camel git commit: CAMEL-7809: Ensure the cron schedule is
updated when the job is rescheduled
CAMEL-7809: Ensure the cron schedule is updated when the job is rescheduled
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/6ab37afa
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/6ab37afa
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/6ab37afa
Branch: refs/heads/master
Commit: 6ab37afa16adbf73f368ac4ff7ae513864b38107
Parents: 6a15b8e
Author: David Riseley <da...@openanswers.co.uk>
Authored: Tue Mar 28 09:52:53 2017 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Mar 28 11:28:23 2017 +0200
----------------------------------------------------------------------
.../quartz2/QuartzScheduledPollConsumerScheduler.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/6ab37afa/components/camel-quartz2/src/main/java/org/apache/camel/pollconsumer/quartz2/QuartzScheduledPollConsumerScheduler.java
----------------------------------------------------------------------
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 5192a56..6213903 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
@@ -168,11 +168,11 @@ public class QuartzScheduledPollConsumerScheduler extends ServiceSupport impleme
id = "trigger-" + getCamelContext().getUuidGenerator().generateUuid();
}
- Trigger existingTrigger = null;
+ CronTrigger existingTrigger = null;
TriggerKey triggerKey = null;
if (triggerId != null && triggerGroup != null) {
triggerKey = new TriggerKey(triggerId, triggerGroup);
- existingTrigger = quartzScheduler.getTrigger(triggerKey);
+ existingTrigger = (CronTrigger)quartzScheduler.getTrigger(triggerKey);
}
// Is an trigger already exist for this triggerId ?
@@ -208,8 +208,11 @@ public class QuartzScheduledPollConsumerScheduler extends ServiceSupport impleme
QuartzHelper.updateJobDataMap(getCamelContext(), job, null);
LOG.debug("Updated jobData map to {}", jobData);
+
+ // Ensure the cron schedule is updated
+ CronTrigger newTrigger = existingTrigger.getTriggerBuilder().withSchedule(CronScheduleBuilder.cronSchedule(getCron()).inTimeZone(getTimeZone())).build();
- quartzScheduler.rescheduleJob(triggerKey, existingTrigger);
+ quartzScheduler.rescheduleJob(triggerKey, newTrigger);
}
}