Class SimpleDateRule

java.lang.Object
com.ibm.icu.util.SimpleDateRule
All Implemented Interfaces:
DateRule

public class SimpleDateRule extends Object implements DateRule
Note: The Holiday framework is a technology preview. Despite its age, is still draft API, and clients should treat it as such. Simple implementation of DateRule.
  • Constructor Summary

    Constructors
    Constructor
    Description
    SimpleDateRule(int month, int dayOfMonth)
    Construct a rule for a fixed date within a month
    SimpleDateRule(int month, int dayOfMonth, int dayOfWeek, boolean after)
    Construct a rule for a weekday within a month, e.g. the first Monday.
  • Method Summary

    Modifier and Type
    Method
    Description
    Return the first occurrance of the event represented by this rule that is on or after the given start date.
    firstBetween(Date start, Date end)
    Return the first occurrance of the event represented by this rule that is on or after the given start date and before the given end date.
    boolean
    isBetween(Date start, Date end)
    Check whether this event occurs at least once between the two dates given.
    boolean
    isOn(Date date)
    Checks whether this event occurs on the given date.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • SimpleDateRule

      public SimpleDateRule(int month, int dayOfMonth)
      Construct a rule for a fixed date within a month
      Parameters:
      month - The month in which this rule occurs (0-based).
      dayOfMonth - The date in that month (1-based).
    • SimpleDateRule

      public SimpleDateRule(int month, int dayOfMonth, int dayOfWeek, boolean after)
      Construct a rule for a weekday within a month, e.g. the first Monday.
      Parameters:
      month - The month in which this rule occurs (0-based).
      dayOfMonth - A date within that month (1-based).
      dayOfWeek - The day of the week on which this rule occurs.
      after - If true, this rule selects the first dayOfWeek on or after dayOfMonth. If false, the rule selects the first dayOfWeek on or before dayOfMonth.
  • Method Details

    • firstAfter

      public Date firstAfter(Date start)
      Return the first occurrance of the event represented by this rule that is on or after the given start date.
      Specified by:
      firstAfter in interface DateRule
      Parameters:
      start - Only occurrances on or after this date are returned.
      Returns:
      The date on which this event occurs, or null if it does not occur on or after the start date.
      See Also:
    • firstBetween

      public Date firstBetween(Date start, Date end)
      Return the first occurrance of the event represented by this rule that is on or after the given start date and before the given end date.
      Specified by:
      firstBetween in interface DateRule
      Parameters:
      start - Only occurrances on or after this date are returned.
      end - Only occurrances before this date are returned.
      Returns:
      The date on which this event occurs, or null if it does not occur between the start and end dates.
      See Also:
    • isOn

      public boolean isOn(Date date)
      Checks whether this event occurs on the given date. This does not take time of day into account; instead it checks whether this event and the given date are on the same day. This is useful for applications such as determining whether a given day is a holiday.
      Specified by:
      isOn in interface DateRule
      Parameters:
      date - The date to check.
      Returns:
      true if this event occurs on the given date.
    • isBetween

      public boolean isBetween(Date start, Date end)
      Check whether this event occurs at least once between the two dates given.
      Specified by:
      isBetween in interface DateRule