java.lang.Object
org.holiday.calendar.observance.AbstractObservance
org.holiday.calendar.observance.islamic.mena.ArafatDay
All Implemented Interfaces:
Function<Integer,LocalDate>, Predicate<Integer>, Observance

public class ArafatDay extends AbstractObservance
Observance of Arafat Day (9 Dhu al-Hijjah AH), the day of standing at Mount Arafat — the day before Eid al-Adha.

Dates are determined by official moon sighting and cannot be computed algorithmically. Dates are derived from the official Eid al-Adha date minus one day, sourced from country-specific exchange and central bank holiday announcements.

Date data is loaded at runtime from arafat-day-{countryCode}.csv in this package, where countryCode is the ISO 3166-1 alpha-2 country code in lower case (e.g. kw).

Author:
Dave Joyce
  • Constructor Details

    • ArafatDay

      public ArafatDay(String countryCode)
  • Method Details

    • computeDate

      protected LocalDate computeDate(int year)
      Description copied from class: AbstractObservance
      Compute the date for this observance in the given year. Only called when AbstractObservance.isValidYear(int) returns true.
      Specified by:
      computeDate in class AbstractObservance
      Parameters:
      year - the year for which to compute the date
      Returns:
      computed holiday date
    • isValidYear

      protected boolean isValidYear(int year)
      Description copied from class: AbstractObservance
      Determine whether this observance applies in the given year. Defaults to true (all years are valid).
      Overrides:
      isValidYear in class AbstractObservance
      Parameters:
      year - the year to test
      Returns:
      true if this observance applies