Exemplo n.º 1
0
 private void ValidateCache(DateTime date)
 {
     if (dataDate != date)
     {
         sunrise  = wrappedProvider.GetSunrise(date);
         sunset   = wrappedProvider.GetSunset(date);
         dataDate = date;
     }
 }
Exemplo n.º 2
0
        public DateTimeOffset RollForwardToNextDay(ScheduleInfo info)
        {
            if (IsInPast(info.EventTime))
            {
                var nextDay = Today().AddDays(1);
                switch (info.TimeType)
                {
                case ScheduleTimeType.Standard:
                    return(nextDay + info.EventTime.TimeOfDay + info.RelativeOffset);

                case ScheduleTimeType.Sunset:
                    return(SunsetProvider.GetSunset(nextDay) + info.RelativeOffset);

                case ScheduleTimeType.Sunrise:
                    return(SunsetProvider.GetSunrise(nextDay) + info.RelativeOffset);
                }
            }
            return(info.EventTime);
        }