예제 #1
0
        private bool IsDayOfWeekMatch(int year, int month, int day)
        {
            if (HasFlag(CronExpressionFlag.DayOfWeekLast) && !CalendarHelper.IsLastDayOfWeek(year, month, day) ||
                HasFlag(CronExpressionFlag.NthDayOfWeek) && !CalendarHelper.IsNthDayOfWeek(day, _nthdayOfWeek))
            {
                return(false);
            }

            if (_dayOfWeek == CronField.DaysOfWeek.AllBits)
            {
                return(true);
            }

            var dayOfWeek = CalendarHelper.GetDayOfWeek(year, month, day);

            return(((_dayOfWeek >> (int)dayOfWeek) & 1) != 0);
        }