From bd9551f015d32585f74fa1ad61f5a5e5a4f5eb87 Mon Sep 17 00:00:00 2001 From: Clint Simon Date: Wed, 27 Jan 2016 14:30:35 -0800 Subject: [PATCH] Add timezone offset to CronDaemon --- CronNET/CronDaemon.cs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/CronNET/CronDaemon.cs b/CronNET/CronDaemon.cs index ae612fd..d94b9e6 100755 --- a/CronNET/CronDaemon.cs +++ b/CronNET/CronDaemon.cs @@ -16,7 +16,8 @@ public class CronDaemon : ICronDaemon { private readonly System.Timers.Timer timer = new System.Timers.Timer(30000); private readonly List cron_jobs = new List(); - private DateTime _last= DateTime.Now; + private DateTime _last = DateTime.Now; + private int _timezone_offset = 0; public CronDaemon() { @@ -24,6 +25,13 @@ public CronDaemon() timer.Elapsed += timer_elapsed; } + public CronDaemon(int timezoneOffset) + { + timer.AutoReset = true; + timer.Elapsed += timer_elapsed; + _timezone_offset = timezoneOffset; + } + public void AddJob(string schedule, ThreadStart action) { var cj = new CronJob(schedule, action); @@ -49,7 +57,7 @@ private void timer_elapsed(object sender, ElapsedEventArgs e) { _last = DateTime.Now; foreach (ICronJob job in cron_jobs) - job.execute(DateTime.Now); + job.execute(DateTime.UtcNow.AddHours(_timezone_offset)); } } }