/// <summary> /// Computes the previous zman time. /// </summary> /// <param name="previousTime">The previous time.</param> /// <returns></returns> private DateTime?ComputePreviousZmanTime(DateTime?previousTime) { if (!previousTime.HasValue) { return(null); } var zmanTime = Location.GetZman(previousTime.Value, ExecuteOnZman); if (zmanTime > previousTime) { zmanTime = Location.GetZman(previousTime.Value.AddDays(-1), ExecuteOnZman); } return(zmanTime); }
/// <summary> /// Computes the next zman time. /// </summary> /// <param name="nextTime">The next time.</param> /// <returns></returns> private DateTime?ComputeNextZmanTime(DateTime?nextTime) { if (!nextTime.HasValue) { return(null); } var zmanTime = Location.GetZman(nextTime.Value, ExecuteOnZman); if (zmanTime < nextTime) { zmanTime = Location.GetZman(nextTime.Value.AddDays(1), ExecuteOnZman); } return(zmanTime); }