コード例 #1
0
        public override void UpdateSchedule(ScheduleItem scheduleItem)
        {
            //Remove item from queue
            Scheduler.CoreScheduler.RemoveFromScheduleQueue(scheduleItem);
            //save item
            SchedulingController.UpdateSchedule(scheduleItem.ScheduleID,
                                                scheduleItem.TypeFullName,
                                                scheduleItem.TimeLapse,
                                                scheduleItem.TimeLapseMeasurement,
                                                scheduleItem.RetryTimeLapse,
                                                scheduleItem.RetryTimeLapseMeasurement,
                                                scheduleItem.RetainHistoryNum,
                                                scheduleItem.AttachToEvent,
                                                scheduleItem.CatchUpEnabled,
                                                scheduleItem.Enabled,
                                                scheduleItem.ObjectDependencies,
                                                scheduleItem.Servers,
                                                scheduleItem.FriendlyName);
            //Update items that are already scheduled
            var futureHistory = GetScheduleHistory(scheduleItem.ScheduleID).Cast <ScheduleHistoryItem>().Where(h => h.NextStart > DateTime.Now);

            foreach (var scheduleHistoryItem in futureHistory)
            {
                scheduleHistoryItem.NextStart = scheduleItem.NextStart;
                SchedulingController.UpdateScheduleHistory(scheduleHistoryItem);
            }


            //Add schedule to queue
            RunScheduleItemNow(scheduleItem);
        }
コード例 #2
0
        public override void UpdateSchedule(ScheduleItem objScheduleItem)
        {
            Scheduler.CoreScheduler.RemoveFromScheduleQueue(objScheduleItem);

            SchedulingController s = new SchedulingController();

            s.UpdateSchedule(objScheduleItem.ScheduleID, objScheduleItem.TypeFullName, objScheduleItem.TimeLapse, objScheduleItem.TimeLapseMeasurement, objScheduleItem.RetryTimeLapse, objScheduleItem.RetryTimeLapseMeasurement, objScheduleItem.RetainHistoryNum, objScheduleItem.AttachToEvent, objScheduleItem.CatchUpEnabled, objScheduleItem.Enabled, objScheduleItem.ObjectDependencies, objScheduleItem.Servers);

            ScheduleHistoryItem objScheduleHistoryItem = new ScheduleHistoryItem(objScheduleItem);

            if (objScheduleHistoryItem.TimeLapse != Null.NullInteger && objScheduleHistoryItem.TimeLapseMeasurement != Null.NullString && objScheduleHistoryItem.Enabled)
            {
                objScheduleHistoryItem.ScheduleSource = ScheduleSource.STARTED_FROM_SCHEDULE_CHANGE;
                Scheduler.CoreScheduler.AddToScheduleQueue(objScheduleHistoryItem);
            }
            DataCache.RemoveCache("ScheduleLastPolled");
        }
コード例 #3
0
        public override void UpdateSchedule( ScheduleItem objScheduleItem )
        {
            Scheduler.CoreScheduler.RemoveFromScheduleQueue( objScheduleItem );

            SchedulingController s = new SchedulingController();
            s.UpdateSchedule( objScheduleItem.ScheduleID, objScheduleItem.TypeFullName, objScheduleItem.TimeLapse, objScheduleItem.TimeLapseMeasurement, objScheduleItem.RetryTimeLapse, objScheduleItem.RetryTimeLapseMeasurement, objScheduleItem.RetainHistoryNum, objScheduleItem.AttachToEvent, objScheduleItem.CatchUpEnabled, objScheduleItem.Enabled, objScheduleItem.ObjectDependencies, objScheduleItem.Servers );

            ScheduleHistoryItem objScheduleHistoryItem = new ScheduleHistoryItem( objScheduleItem );

            if( objScheduleHistoryItem.TimeLapse != Null.NullInteger && objScheduleHistoryItem.TimeLapseMeasurement != Null.NullString && objScheduleHistoryItem.Enabled )
            {
                objScheduleHistoryItem.ScheduleSource = ScheduleSource.STARTED_FROM_SCHEDULE_CHANGE;
                Scheduler.CoreScheduler.AddToScheduleQueue( objScheduleHistoryItem );
            }
            DataCache.RemoveCache( "ScheduleLastPolled" );
        }