Example #1
0
        private TimeFrequencyBase GetTimeFrequency()
        {
            TimeFrequencyBase TimeFrequency = null;

            if (this.radioRecurDayOnce.Checked)
            {
                string timeValue = this.execOnceTime.Value;
                var    time      = DateTime.Parse(timeValue);
                TimeFrequency = new FixedTimeFrequency(time.TimeOfDay);
            }
            else if (this.radioRecurDayPeriod.Checked)
            {
                int          interval = int.Parse(txtIntervalTimeFrequency.Value);
                IntervalUnit unit     = (IntervalUnit)int.Parse(ddlIntervalTimeFrequencyUnit.Items[ddlIntervalTimeFrequencyUnit.SelectedIndex].Value);

                string startTimeValue = this.execTimeFrequencyStartTime.Value;
                var    startTime      = DateTime.Parse(startTimeValue);

                string endTimeValue = this.execTimeFrequencyEndTime.Value;
                var    endTime      = DateTime.Parse(endTimeValue);

                TimeFrequency = new RecurringTimeFrequency(interval, unit, startTime.TimeOfDay, endTime.TimeOfDay);
            }

            return(TimeFrequency);
        }
Example #2
0
        private static JobSchedule CreateImmediatelySchedule()
        {
            DateTime nextTime = DateTime.Now.AddSeconds(2);

            FixedTimeFrequency frequency = new FixedTimeFrequency(new TimeSpan(nextTime.Hour, nextTime.Minute, nextTime.Second));

            return(new JobSchedule(UuidHelper.NewUuidString(), "立即执行的计划", DateTime.Now, null));
        }
Example #3
0
        /// <summary>
        /// 创建立即调度的计划
        /// </summary>
        /// <returns></returns>
        internal static JobSchedule CreateImmediateSchedule()
        {
            DateTime now      = DateTime.Now;
            DateTime execTime = now.AddSeconds(2);

            FixedTimeFrequency        timeFrequency = new FixedTimeFrequency(new TimeSpan(execTime.Hour, execTime.Minute, execTime.Second));
            DailyJobScheduleFrequency frequency     = new DailyJobScheduleFrequency(1, timeFrequency);
            JobSchedule schedule = new JobSchedule(UuidHelper.NewUuidString(), "立即执行", DateTime.Now, frequency);

            schedule.SchduleType = JobSchduleType.Temporary;
            schedule.StartTime   = now.AddHours(-1);
            schedule.EndTime     = now.AddDays(1);
            return(schedule);
        }
Example #4
0
        private static JobSchedule CreateMonthlySchedule()
        {
            string            schID         = Guid.NewGuid().ToString();
            string            schName       = "TestName" + DateTime.Now.ToString();
            DateTime          startTime     = new DateTime(2011, 4, 1);
            DateTime          endTime       = new DateTime(2012, 4, 1);
            TimeFrequencyBase timeFrequency = new FixedTimeFrequency(new TimeSpan(9, 0, 0));

            JobScheduleFrequencyBase schFrequency = new MonthlyJobScheduleFrequency(10, 1, timeFrequency);

            schFrequency.ID = Guid.NewGuid().ToString();

            JobSchedule schedule = new JobSchedule(schID, schName, startTime, endTime, schFrequency);

            return(schedule);
        }
		public void AfterMidnightFixedTimeFrequencyTest()
		{
			TimeSpan occurTime = new TimeSpan(0, 0, 0);
			FixedTimeFrequency frequency = new FixedTimeFrequency(occurTime);

			Console.WriteLine(frequency.Description);

			TimeScope scope = frequency.GetTimeScope(new TimeSpan(0, 0, 5), _TimeOffset);

			Assert.IsNotNull(scope);

			Console.WriteLine(scope.BeginTime);
			Console.WriteLine(scope.EndTime);

			Assert.AreEqual(occurTime - _TimeOffset, scope.BeginTime);
			Assert.AreEqual(occurTime + _TimeOffset, scope.EndTime);
		}
Example #6
0
        public void AfterMidnightFixedTimeFrequencyTest()
        {
            TimeSpan           occurTime = new TimeSpan(0, 0, 0);
            FixedTimeFrequency frequency = new FixedTimeFrequency(occurTime);

            Console.WriteLine(frequency.Description);

            TimeScope scope = frequency.GetTimeScope(new TimeSpan(0, 0, 5), _TimeOffset);

            Assert.IsNotNull(scope);

            Console.WriteLine(scope.BeginTime);
            Console.WriteLine(scope.EndTime);

            Assert.AreEqual(occurTime - _TimeOffset, scope.BeginTime);
            Assert.AreEqual(occurTime + _TimeOffset, scope.EndTime);
        }
Example #7
0
        public void WithLastExeTimeMatchWeekIntervalWeeklyFixdTimeJobScheduleFrequencyTest()
        {
            List <DayOfWeek> daysList = new List <DayOfWeek>();

            daysList.Add(DayOfWeek.Monday);
            daysList.Add(DayOfWeek.Tuesday);
            daysList.Add(DayOfWeek.Wednesday);
            daysList.Add(DayOfWeek.Thursday);
            daysList.Add(DayOfWeek.Friday);

            FixedTimeFrequency frequency = new FixedTimeFrequency(new TimeSpan(6, 0, 0));

            WeeklyJobScheduleFrequency weeklyFrequency = new WeeklyJobScheduleFrequency(daysList, 1, frequency);

            DateTime startTime   = new DateTime(2013, 5, 31);
            DateTime lastExeTime = new DateTime(2013, 7, 30, 5, 59, 27);

            DateTime checkPoint = new DateTime(2013, 7, 30, 6, 0, 27);
            bool     result     = weeklyFrequency.IsNextExecuteTime(startTime, lastExeTime, checkPoint, TimeSpan.FromSeconds(60 / 2 * 1.1));

            Assert.IsFalse(result);
        }
		public void WithLastExeTimeMatchWeekIntervalWeeklyFixdTimeJobScheduleFrequencyTest()
		{
			List<DayOfWeek> daysList = new List<DayOfWeek>();

			daysList.Add(DayOfWeek.Monday);
			daysList.Add(DayOfWeek.Tuesday);
			daysList.Add(DayOfWeek.Wednesday);
			daysList.Add(DayOfWeek.Thursday);
			daysList.Add(DayOfWeek.Friday);

			FixedTimeFrequency frequency = new FixedTimeFrequency(new TimeSpan(6, 0, 0));

			WeeklyJobScheduleFrequency weeklyFrequency = new WeeklyJobScheduleFrequency(daysList, 1, frequency);

			DateTime startTime = new DateTime(2013, 5, 31);
			DateTime lastExeTime = new DateTime(2013, 7, 30, 5, 59, 27);

			DateTime checkPoint = new DateTime(2013, 7, 30, 6, 0, 27);
			bool result = weeklyFrequency.IsNextExecuteTime(startTime, lastExeTime, checkPoint, TimeSpan.FromSeconds(60 / 2 * 1.1));

			Assert.IsFalse(result);
		}
Example #9
0
		private static JobSchedule CreateImmediatelySchedule()
		{
			DateTime nextTime = DateTime.Now.AddSeconds(2);

			FixedTimeFrequency frequency = new FixedTimeFrequency(new TimeSpan(nextTime.Hour, nextTime.Minute, nextTime.Second));

			return new JobSchedule(UuidHelper.NewUuidString(), "立即执行的计划", DateTime.Now, null);
		}
Example #10
0
		private static JobSchedule CreateSingleTimeSchedule()
		{
			DateTime now = DateTime.Now;
			DateTime execTime = now.AddSeconds(6);

			FixedTimeFrequency timeFrequency = new FixedTimeFrequency(new TimeSpan(execTime.Hour, execTime.Minute, execTime.Second));
			DailyJobScheduleFrequency frequency = new DailyJobScheduleFrequency(1, timeFrequency);
			JobSchedule schedule = new JobSchedule(UuidHelper.NewUuidString(), "一般调度", now.AddDays(-1), frequency);

			schedule.SchduleType = JobSchduleType.Temporary;
			schedule.EndTime = now.AddHours(1);

			return schedule;
		}