Пример #1
0
        /// <summary>
        /// Build the actual Trigger -- NOT intended to be invoked by end users,
        /// but will rather be invoked by a TriggerBuilder which this
        /// ScheduleBuilder is given to.
        /// </summary>
        /// <returns></returns>
        public override IMutableTrigger Build()
        {
            DailyTimeIntervalTriggerImpl st = new DailyTimeIntervalTriggerImpl
            {
                RepeatInterval     = interval,
                RepeatIntervalUnit = intervalUnit,
                MisfireInstruction = misfireInstruction,
                RepeatCount        = repeatCount,
                TimeZone           = timeZone
            };

            if (daysOfWeek != null)
            {
                st.DaysOfWeek = new ReadOnlyCompatibleHashSet <DayOfWeek>(daysOfWeek);
            }
            else
            {
                st.DaysOfWeek = new ReadOnlyCompatibleHashSet <DayOfWeek>(AllDaysOfTheWeek);
            }

            if (startTimeOfDayUtc != null)
            {
                st.StartTimeOfDay = startTimeOfDayUtc;
            }
            else
            {
                st.StartTimeOfDay = TimeOfDay.HourAndMinuteOfDay(0, 0);
            }

            if (endTimeOfDayUtc != null)
            {
                st.EndTimeOfDay = endTimeOfDayUtc;
            }
            else
            {
                st.EndTimeOfDay = TimeOfDay.HourMinuteAndSecondOfDay(23, 59, 59);
            }

            return(st);
        }
        /// <summary>
        /// Build the actual Trigger -- NOT intended to be invoked by end users,
        /// but will rather be invoked by a TriggerBuilder which this
        /// ScheduleBuilder is given to.
        /// </summary>
        /// <returns></returns>
        public override IMutableTrigger Build()
        {
            DailyTimeIntervalTriggerImpl st = new DailyTimeIntervalTriggerImpl();

            st.RepeatInterval     = interval;
            st.RepeatIntervalUnit = intervalUnit;
            st.MisfireInstruction = misfireInstruction;
            st.RepeatCount        = repeatCount;

            if (daysOfWeek != null)
            {
                st.DaysOfWeek = daysOfWeek;
            }
            else
            {
                st.DaysOfWeek = AllDaysOfTheWeek;
            }

            if (startTimeOfDayUtc != null)
            {
                st.StartTimeOfDay = startTimeOfDayUtc;
            }
            else
            {
                st.StartTimeOfDay = TimeOfDay.HourAndMinuteOfDay(0, 0);
            }

            if (endTimeOfDayUtc != null)
            {
                st.EndTimeOfDay = endTimeOfDayUtc;
            }
            else
            {
                st.EndTimeOfDay = TimeOfDay.HourMinuteAndSecondOfDay(23, 59, 59);
            }

            return(st);
        }