Esempio n. 1
0
        protected DateTime?NextSecond(int year, int month, int day, int hour, int minute, int second)
        {
            switch (SecondType)
            {
            case CronFieldType.Any:
                if (second < 59)
                {
                    return(new DateTime(year, month, day, hour, minute, second + 1));
                }
                else
                {
                    return(NextMinute(year, month, day, hour, minute, 0));
                }

            case CronFieldType.Specified:
                var values = Seconds.Where(x => x > second);
                if (values.Any())
                {
                    return(new DateTime(year, month, day, hour, minute, values.First()));
                }
                else
                {
                    return(NextMinute(year, month, day, hour, minute, Seconds.First()));
                }

            default: throw new NotImplementedException();
            }
        }