示例#1
0
        /// <summary>
        /// Maps the type of trigger from business entity to COM representation
        /// </summary>
        /// <param name="type">Trigger Type</param>
        /// <returns>COM represented trigger type</returns>
        private static _TASK_TRIGGER_TYPE2 MapTriggerType(TriggerType type)
        {
            _TASK_TRIGGER_TYPE2 triggerType = _TASK_TRIGGER_TYPE2.TASK_TRIGGER_TIME; // default is one time/once

            switch (type)
            {
            case TriggerType.Daily:
                triggerType = _TASK_TRIGGER_TYPE2.TASK_TRIGGER_DAILY;
                break;

            case TriggerType.Weekly:
                triggerType = _TASK_TRIGGER_TYPE2.TASK_TRIGGER_WEEKLY;
                break;

            case TriggerType.Monthly:
                triggerType = _TASK_TRIGGER_TYPE2.TASK_TRIGGER_MONTHLY;
                break;

            case TriggerType.Once:
            default:
                triggerType = _TASK_TRIGGER_TYPE2.TASK_TRIGGER_TIME;
                break;
            }

            return(triggerType);
        }
示例#2
0
 protected ScheduledTaskTrigger(DateTimeOffset startDate, _TASK_TRIGGER_TYPE2 type, TimeSpan?interval = null)
 {
     if (interval.HasValue && interval.Value.TotalDays > 31)
     {
         throw new ArgumentOutOfRangeException("interval", "Maximum interval is 31 days");
     }
     if (interval.HasValue && interval.Value.TotalSeconds < 60)
     {
         throw new ArgumentOutOfRangeException("interval", "Minimum interval is 1 minute");
     }
     this._startDate = startDate;
     this._type      = type;
     this._interval  = interval;
 }