You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2015/06/03 17:04:51 UTC
[1/2] camel git commit: CAMEL-8826 Added timezone parameter to
CronSchedulerRoutePolicy
Repository: camel
Updated Branches:
refs/heads/master 10fd60a8c -> a704d0331
CAMEL-8826 Added timezone parameter to CronSchedulerRoutePolicy
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a704d033
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a704d033
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a704d033
Branch: refs/heads/master
Commit: a704d0331b99a334bc450590ecc556dbdcf04247
Parents: adfbaf6
Author: Willem Jiang <wi...@gmail.com>
Authored: Wed Jun 3 23:03:39 2015 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Wed Jun 3 23:03:48 2015 +0800
----------------------------------------------------------------------
.../quartz2/CronScheduledRoutePolicy.java | 46 ++++++++++++--------
1 file changed, 28 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/a704d033/components/camel-quartz2/src/main/java/org/apache/camel/routepolicy/quartz2/CronScheduledRoutePolicy.java
----------------------------------------------------------------------
diff --git a/components/camel-quartz2/src/main/java/org/apache/camel/routepolicy/quartz2/CronScheduledRoutePolicy.java b/components/camel-quartz2/src/main/java/org/apache/camel/routepolicy/quartz2/CronScheduledRoutePolicy.java
index 2271628..eb7978a 100644
--- a/components/camel-quartz2/src/main/java/org/apache/camel/routepolicy/quartz2/CronScheduledRoutePolicy.java
+++ b/components/camel-quartz2/src/main/java/org/apache/camel/routepolicy/quartz2/CronScheduledRoutePolicy.java
@@ -16,13 +16,13 @@
*/
package org.apache.camel.routepolicy.quartz2;
+import java.util.TimeZone;
import java.util.concurrent.TimeUnit;
import org.apache.camel.Route;
import org.apache.camel.component.quartz2.QuartzComponent;
import org.apache.camel.util.ObjectHelper;
import org.quartz.CronScheduleBuilder;
-import org.quartz.CronTrigger;
import org.quartz.Trigger;
import org.quartz.TriggerBuilder;
@@ -31,6 +31,8 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
private String routeStopTime;
private String routeSuspendTime;
private String routeResumeTime;
+ private String timeZoneString;
+ private TimeZone timeZone;
public void onInit(Route route) {
try {
@@ -78,28 +80,27 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
@Override
protected Trigger createTrigger(Action action, Route route) throws Exception {
- CronTrigger trigger = null;
-
+ Trigger trigger = null;
+
+ CronScheduleBuilder scheduleBuilder = null;
if (action == Action.START) {
- trigger = TriggerBuilder.newTrigger()
- .withIdentity(TRIGGER_START + route.getId(), TRIGGER_GROUP + route.getId())
- .withSchedule(CronScheduleBuilder.cronSchedule(getRouteStartTime()))
- .build();
+ scheduleBuilder = CronScheduleBuilder.cronSchedule(getRouteStartTime());
} else if (action == Action.STOP) {
- trigger = TriggerBuilder.newTrigger()
- .withIdentity(TRIGGER_STOP + route.getId(), TRIGGER_GROUP + route.getId())
- .withSchedule(CronScheduleBuilder.cronSchedule(getRouteStopTime()))
- .build();
+ scheduleBuilder = CronScheduleBuilder.cronSchedule(getRouteStopTime());
} else if (action == Action.SUSPEND) {
- trigger = TriggerBuilder.newTrigger()
- .withIdentity(TRIGGER_SUSPEND + route.getId(), TRIGGER_GROUP + route.getId())
- .withSchedule(CronScheduleBuilder.cronSchedule(getRouteSuspendTime()))
- .build();
+ scheduleBuilder = CronScheduleBuilder.cronSchedule(getRouteSuspendTime());
} else if (action == Action.RESUME) {
+ scheduleBuilder = CronScheduleBuilder.cronSchedule(getRouteResumeTime());
+ }
+
+ if (scheduleBuilder != null) {
+ if (timeZone != null) {
+ scheduleBuilder.inTimeZone(timeZone);
+ }
trigger = TriggerBuilder.newTrigger()
- .withIdentity(TRIGGER_RESUME + route.getId(), TRIGGER_GROUP + route.getId())
- .withSchedule(CronScheduleBuilder.cronSchedule(getRouteResumeTime()))
- .build();
+ .withIdentity(TRIGGER_START + route.getId(), TRIGGER_GROUP + route.getId())
+ .withSchedule(scheduleBuilder)
+ .build();
}
return trigger;
@@ -135,6 +136,15 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
public String getRouteResumeTime() {
return routeResumeTime;
+ }
+
+ public String getTimeZone() {
+ return timeZoneString;
+ }
+
+ public void setTimeZone(String timeZone) {
+ this.timeZoneString = timeZone;
+ this.timeZone = TimeZone.getTimeZone(timeZone);
}
}
[2/2] camel git commit: CAMEL-8826 Added timezone parameter to
CronSchedulerRoutePolicy
Posted by ni...@apache.org.
CAMEL-8826 Added timezone parameter to CronSchedulerRoutePolicy
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/adfbaf63
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/adfbaf63
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/adfbaf63
Branch: refs/heads/master
Commit: adfbaf635a6179ecbfaeafd3a92df0a54c9ce9bb
Parents: 10fd60a
Author: Willem Jiang <wi...@gmail.com>
Authored: Wed Jun 3 23:03:21 2015 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Wed Jun 3 23:03:48 2015 +0800
----------------------------------------------------------------------
.../quartz/CronScheduledRoutePolicy.java | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/adfbaf63/components/camel-quartz/src/main/java/org/apache/camel/routepolicy/quartz/CronScheduledRoutePolicy.java
----------------------------------------------------------------------
diff --git a/components/camel-quartz/src/main/java/org/apache/camel/routepolicy/quartz/CronScheduledRoutePolicy.java b/components/camel-quartz/src/main/java/org/apache/camel/routepolicy/quartz/CronScheduledRoutePolicy.java
index 32161d8..6c0ac42 100644
--- a/components/camel-quartz/src/main/java/org/apache/camel/routepolicy/quartz/CronScheduledRoutePolicy.java
+++ b/components/camel-quartz/src/main/java/org/apache/camel/routepolicy/quartz/CronScheduledRoutePolicy.java
@@ -16,6 +16,7 @@
*/
package org.apache.camel.routepolicy.quartz;
+import java.util.TimeZone;
import java.util.concurrent.TimeUnit;
import org.apache.camel.Route;
@@ -29,6 +30,8 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
private String routeStopTime;
private String routeSuspendTime;
private String routeResumeTime;
+ private String timeZoneString;
+ private TimeZone timeZone;
public void onInit(Route route) {
try {
@@ -87,7 +90,10 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
} else if (action == Action.RESUME) {
trigger = new CronTrigger(TRIGGER_RESUME + route.getId(), TRIGGER_GROUP + route.getId(), getRouteResumeTime());
}
-
+ // Just reset the time zone once the timeZone parameter is set
+ if (timeZone != null) {
+ trigger.setTimeZone(timeZone);
+ }
return trigger;
}
@@ -121,6 +127,15 @@ public class CronScheduledRoutePolicy extends ScheduledRoutePolicy implements Sc
public String getRouteResumeTime() {
return routeResumeTime;
+ }
+
+ public String getTimeZone() {
+ return timeZoneString;
+ }
+
+ public void setTimeZone(String timeZone) {
+ this.timeZoneString = timeZone;
+ this.timeZone = TimeZone.getTimeZone(timeZone);
}
}