Beispiel #1
0
        /// <summary>
        ///     Creates the cron schedule builder as per provided values in App-Settings.
        /// </summary>
        /// <returns></returns>
        public static CronScheduleBuilder CreateCronScheduleBuilder(JobSchedulingInfo schedulingInfo)
        {
            CronScheduleBuilder scheduleBuilder = null;
            switch ((JobFrequency) schedulingInfo.JobFrequency)
            {
                case JobFrequency.Weekly:
                    scheduleBuilder =
                        CronScheduleBuilder.WeeklyOnDayAndHourAndMinute(
                            (DayOfWeek) schedulingInfo.RunJobOnDay, schedulingInfo.RunJobAtHour,
                            schedulingInfo.RunJobAtMinutes);
                    break;
                case JobFrequency.Monthly:
                    scheduleBuilder =
                        CronScheduleBuilder.MonthlyOnDayAndHourAndMinute(schedulingInfo.RunJobOnDay,
                            schedulingInfo.RunJobAtHour,
                            schedulingInfo.RunJobAtMinutes);
                    break;
                case JobFrequency.Daily:
                    scheduleBuilder = CronScheduleBuilder.DailyAtHourAndMinute(schedulingInfo.RunJobAtHour,
                        schedulingInfo.RunJobAtMinutes);
                    break;
            }

            return scheduleBuilder;
        }
Beispiel #2
0
 public HttpResponseMessage UpdateJobScheduling(JobSchedulingInfo schedulingInfo)
 {
     var data = dbContext.JobSchedulingInfoes.FirstOrDefault(x => x.JobId == schedulingInfo.JobId);
     if (data != null)
     {
         dbContext.JobSchedulingInfoes.AddOrUpdate((JobSchedulingInfo)schedulingInfo);
         dbContext.SaveChanges();
         return new HttpResponseMessage(HttpStatusCode.OK);
     }
     return new HttpResponseMessage(HttpStatusCode.NotFound);
 }