private static Repetition CreateRepetition(RepetitionPeriod period)
        {
            switch (period)
            {
            case RepetitionPeriod.Day:
            {
                return(new DailyRepetition());
            }

            case RepetitionPeriod.Month:
            {
                return(new MonthlyRepetition());
            }

            case RepetitionPeriod.Week:
            {
                return(new WeeklyRepetition());
            }

            case RepetitionPeriod.Year:
            {
                return(new YearlyRepetition());
            }

            default:
            {
                return(new NoneRepetition());
            }
            }
        }
예제 #2
0
        /// <summary>
        /// Creates a new instance of Repetition based on passed <paramref name="period"/>
        /// Initialize sub properties if needed
        /// </summary>
        /// <param name="period">   The period. </param>
        /// <returns>
        /// New instance of repetition.
        /// </returns>
        public Repetition CreateAndInit(RepetitionPeriod period)
        {
            switch (period)
            {
            case RepetitionPeriod.Day:
            {
                return(new DailyRepetition());
            }

            case RepetitionPeriod.Month:
            {
                return(new MonthlyRepetition());
            }

            case RepetitionPeriod.Week:
            {
                var result = new WeeklyRepetition
                {
                    Days = weekDaysFactory.CreateInitialListOfWeekDays(true)
                };
                return(result);
            }

            case RepetitionPeriod.Year:
            {
                return(new YearlyRepetition());
            }

            default:
            {
                return(new NoneRepetition());
            }
            }
        }
예제 #3
0
 public ActionResult <Repetition> CreateRepetition([FromQuery] RepetitionPeriod period)
 {
     return(repetitionFactory.CreateAndInit(period));
 }
예제 #4
0
 public Repetition(uint count, RepetitionPeriod period)
 {
     Count  = count;
     Period = period;
 }