private void BuildMoveableObservanceMap(int year, Holiday holiday, Dictionary <DateTime, Holiday> map) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } switch (holidayInstance.Value.DayOfWeek) { case DayOfWeek.Monday: map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); break; //if holiday falls on tuesday or wednesday, the holiday is observed on the last monday case DayOfWeek.Tuesday: case DayOfWeek.Wednesday: map.Add(holidayInstance.Value.LastDayOfWeek(DayOfWeek.Monday), holiday); break; //if holiday falls on thu, fri, sat, sun, the holiday is observed on the next monday default: map.Add(holidayInstance.Value.NextDayOfWeek(DayOfWeek.Monday), holiday); break; } }
private void TestHoliday(Holiday holiday, DateTime dateOnGregorian) { var holidayInstance = holiday.GetInstance(dateOnGregorian.Year); Assert.IsTrue(holidayInstance.HasValue); Assert.AreEqual(dateOnGregorian, holidayInstance.Value); Assert.IsTrue(holiday.IsInstanceOf(dateOnGregorian)); }
private void BuildNormalObservanceMap(int year, Holiday holiday, Dictionary <DateTime, Holiday> map) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); }
private void BuildTuristicObservanceMap(int year, Holiday holiday, Dictionary <DateTime, Holiday> map) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); //if holiday falls on tuesday, the holiday is also observed on the last monday if (holidayInstance.Value.DayOfWeek == DayOfWeek.Tuesday) { map.Add(holidayInstance.Value.LastDayOfWeek(DayOfWeek.Monday), holiday); } //if holiday falls on thursday, the holiday is also observed on the next friday if (holidayInstance.Value.DayOfWeek == DayOfWeek.Thursday) { map.Add(holidayInstance.Value.NextDayOfWeek(DayOfWeek.Friday), holiday); } }
public override DateTime?GetInstance(int year) { return(EnsureNonWeekend(_holiday.GetInstance(year))); }
private void BuildTuristicObservanceMap(int year, Holiday holiday, Dictionary<DateTime, Holiday> map) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); //if holiday falls on tuesday, the holiday is also observed on the last monday if (holidayInstance.Value.DayOfWeek == DayOfWeek.Tuesday) { map.Add(holidayInstance.Value.LastDayOfWeek(DayOfWeek.Monday), holiday); } //if holiday falls on thursday, the holiday is also observed on the next friday if (holidayInstance.Value.DayOfWeek == DayOfWeek.Thursday) { map.Add(holidayInstance.Value.NextDayOfWeek(DayOfWeek.Friday), holiday); } }
private void BuildNormalObservanceMap(int year, Holiday holiday, Dictionary<DateTime, Holiday> map) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); }
private void BuildMoveableObservanceMap(int year, Holiday holiday, Dictionary<DateTime, Holiday> map ) { var holidayInstance = holiday.GetInstance(year); if (!holidayInstance.HasValue) { return; } switch (holidayInstance.Value.DayOfWeek) { case DayOfWeek.Monday: map.Add(holidayInstance.Value, DayOfRespectForCulturalDiversity); break; //if holiday falls on tuesday or wednesday, the holiday is observed on the last monday case DayOfWeek.Tuesday: case DayOfWeek.Wednesday: map.Add(holidayInstance.Value.LastDayOfWeek(DayOfWeek.Monday), holiday); break; //if holiday falls on thu, fri, sat, sun, the holiday is observed on the next monday default: map.Add(holidayInstance.Value.NextDayOfWeek(DayOfWeek.Monday), holiday); break; } }