Example #1
0
        public static void timer_Elapsed(object sender, ElapsedEventArgs e)
        {
            try
            {
                Logger.Write("Timer Elapsed");
                var timer = (Timer)sender;
                var scheduleManager = new ScheduleManager();
                var schedule = scheduleManager.GetSchedule();
                if (schedule != null)
                {

                    Scheduler.Start(schedule);
                    if (schedule.EndTime < DateTime.Now)
                        schedule = scheduleManager.GetSchedule();
                    timer.Interval = DateTime.Now.AddMinutes(schedule.Frequency).RoundUp().TotalMilliseconds;
                    Logger.Write("Next Call in :" + DateTime.Now.AddMinutes(schedule.Frequency).RoundUp());
                }
                else
                {
                    var nextSchedule = scheduleManager.GetNextSchedule();
                    timer.Interval = (nextSchedule.StartTime.RoundUp()).TotalMilliseconds;
                    Logger.Write("No schedules till :" + nextSchedule.StartTime);
                }
            }
            catch (Exception)
            {

                throw;
            }
        }
Example #2
0
 public static void timer_Elapsed(object sender, ElapsedEventArgs e)
 {
     try
     {
         Logger.Write("Timer Elapsed");
         var timer           = (Timer)sender;
         var scheduleManager = new ScheduleManager();
         var schedule        = scheduleManager.GetSchedule();
         if (schedule != null)
         {
             Scheduler.Start(schedule);
             if (schedule.EndTime < DateTime.Now)
             {
                 schedule = scheduleManager.GetSchedule();
             }
             timer.Interval = DateTime.Now.AddMinutes(schedule.Frequency).RoundUp().TotalMilliseconds;
             Logger.Write("Next Call in :" + DateTime.Now.AddMinutes(schedule.Frequency).RoundUp());
         }
         else
         {
             var nextSchedule = scheduleManager.GetNextSchedule();
             timer.Interval = (nextSchedule.StartTime.RoundUp()).TotalMilliseconds;
             Logger.Write("No schedules till :" + nextSchedule.StartTime);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
Example #3
0
 public static void Start(Schedule schedule)
 {
     lock (syncRoot)
     {
         var scheduleManager = new ScheduleManager();
         if (scheduleManager.CanStartJob())
         {
             Logger.Write("Job to be started");
             scheduleManager.RunSheduledCampaigns(schedule.EmailBatchSize, schedule.SmsBatchSize);
         }
         else
         {
             Logger.Write("No scheduled jobs pending / Last job not completed. Job stopped");
         }
     }
 }
Example #4
0
 public static void Start(Schedule schedule)
 {
     lock (syncRoot)
     {
         var scheduleManager = new ScheduleManager();
         if (scheduleManager.CanStartJob())
         {
             Logger.Write("Job to be started");
             scheduleManager.RunSheduledCampaigns(schedule.EmailBatchSize, schedule.SmsBatchSize);
         }
         else
         {
             Logger.Write("No scheduled jobs pending / Last job not completed. Job stopped");
         }
     }
 }