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);
     }    
 
 }