public virtual IEnumerable <LocalInterval> GetIntervals(LocalInterval interval, DateTimeZone destinationTimezone) { var maskIntervals = mask.GetIntervals(interval, destinationTimezone); var contentIntervals = payload.GetIntervals(interval, destinationTimezone); return(TimeMathOld.Intersection(contentIntervals, maskIntervals).OrderBy(i => i.Start)); }
public IEnumerable <LocalInterval> GetIntervals(LocalInterval interval = null) { var maskIntervals = mask.GetIntervals(interval); var contentIntervals = payload.GetIntervals(interval); return(TimeMathOld.Intersection(contentIntervals, maskIntervals).OrderBy(i => i.Start)); }
protected virtual IEnumerable <LocalInterval> GetLocalIntervalsBase(LocalInterval interval = null) { if (interval == null) { return(mask.Select(i => i.Clone())); } if (!interval.Start.HasValue || !interval.End.HasValue) { throw new ArgumentOutOfRangeException("interval", "Cannot request holidays for an unbounded range"); } return(TimeMathOld.Intersection(mask, interval)); }