com.ibm.icu.util

Class SimpleDateRule

Implemented Interfaces:
DateRule

public class SimpleDateRule
extends Object
implements DateRule

Simple implementation of DateRule.

Constructor Summary

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

Date
firstAfter(Date start)
Return the first occurrance of the event represented by this rule that is on or after the given start date.
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.

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.

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.

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

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.

Copyright (c) 2006 IBM Corporation and others.