Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.calendar
Class CalendarUtils

    java.lang.Object
      org.jdesktop.swingx.calendar.CalendarUtils

    public class CalendarUtils

extends java.lang.Object

Calendar manipulation. PENDING: replace by something tested - as is c&p'ed dateUtils to work on a calendar instead of using long

Author:
  Jeanette Winzenburg

Field Summary
`static int` | `DECADE`
`static int` | `ONE_DAY`
`static int` | `ONE_HOUR`
`static int` | `ONE_MINUTE`
`static int` | `THREE_HOURS`
`static int` | `YEAR_IN_DECADE`

Constructor Summary
`CalendarUtils()`

Method Summary
`static void` | `add(java.util.Calendar calendar, int field, int amount)` Increments the calendar field of the given calendar by amount.
`static boolean` | `areEqual(java.util.Date current, java.util.Date date)` Checks the given dates for being equal.
`static void` | `endOfDay(java.util.Calendar calendar)` Adjust the given calendar to the last millisecond of the specified date.
`static java.util.Date` | `endOfDay(java.util.Calendar calendar, java.util.Date date)` Adjust the given calendar to the last millisecond of the given date.
`static void` | `endOfMonth(java.util.Calendar calendar)` Adjusts the calendar to the end of the current month.
`static void` | `endOfWeek(java.util.Calendar calendar)` Adjusts the calendar to the end of the current week.
`static java.util.Date` | `endOfWeek(java.util.Calendar calendar, java.util.Date date)` Adjusts the calendar to the end of the current week.
`static int` | `get(java.util.Calendar calendar, int field)` Gets the calendar field of the given calendar by amount.
`static java.util.Date` | `getEndOfDST(java.util.Calendar calendar)` Adjusts the Calendar to the end of the day of the last day in DST in the current year or unchanged if not using DST.
`static java.util.Date` | `getStartOfDST(java.util.Calendar calendar)` Adjusts the Calendar to the end of the day of the first day in DST in the current year or unchanged if not using DST.
`static boolean` | `isEndOfDay(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the end of a day (in the calendar's time zone).
`static boolean` | `isEndOfMonth(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the end of a month (in the calendar's time zone).
`static boolean` | `isEndOfWeek(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the end of a week (in the calendar's time zone).
`static boolean` | `isFlushed(java.util.Calendar calendar)` Returns a boolean to indicate whether the given calendar is flushed.
`static boolean` | `isSame(java.util.Calendar today, java.util.Date now, int field)` Returns a boolean indicating whether the given Date is in the same period as the Date in the calendar, as defined by the calendar field.
`static boolean` | `isSameDay(java.util.Calendar today, java.util.Date now)` Returns a boolean indicating whether the given Date is the same day as the day in the calendar.
`static boolean` | `isStartOf(java.util.Calendar calendar, int field)` Returns a boolean indicating if the calendar is set to the start of a period as defined by the given field.
`static boolean` | `isStartOfDay(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the start of a day (in the calendar's time zone).
`static boolean` | `isStartOfDecade(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the start of a year (in the calendar's time zone).
`static boolean` | `isStartOfMonth(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the start of a month (in the calendar's time zone).
`static boolean` | `isStartOfWeek(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the start of a month (in the calendar's time zone).
`static boolean` | `isStartOfYear(java.util.Calendar calendar)` Returns a boolean indicating if the given calendar represents the start of a year (in the calendar's time zone).
`static void` | `set(java.util.Calendar calendar, int field, int value)` Sets the calendar field of the given calendar by amount.
`static void` | `startOf(java.util.Calendar calendar, int field)` Adjusts the given calendar to the start of the period as indicated by the given field.
`static void` | `startOfDay(java.util.Calendar calendar)` Adjust the given calendar to the first millisecond of the current day.
`static java.util.Date` | `startOfDay(java.util.Calendar calendar, java.util.Date date)` Adjust the given calendar to the first millisecond of the given date.
`static void` | `startOfDecade(java.util.Calendar calendar)` Adjusts the given Calendar to the start of the year.
`static java.util.Date` | `startOfDecade(java.util.Calendar calendar, java.util.Date date)` Adjusts the given Calendar to the start of the decade as defined by the given date.
`static void` | `startOfMonth(java.util.Calendar calendar)` Adjusts the calendar to the start of the current month.
`static void` | `startOfWeek(java.util.Calendar calendar)` Adjusts the calendar to the start of the current week.
`static java.util.Date` | `startOfWeek(java.util.Calendar calendar, java.util.Date date)` Adjusts the calendar to the start of the current week.
`static void` | `startOfYear(java.util.Calendar calendar)` Adjusts the given Calendar to the start of the year.
`static java.util.Date` | `startOfYear(java.util.Calendar calendar, java.util.Date date)` Adjusts the given Calendar to the start of the year as defined by the given date.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### ONE_MINUTE

    public static final int ONE_MINUTE

See Also:
  Constant Field Values

### ONE_HOUR

    public static final int ONE_HOUR

See Also:
  Constant Field Values

### THREE_HOURS

    public static final int THREE_HOURS

See Also:
  Constant Field Values

### ONE_DAY

    public static final int ONE_DAY

See Also:
  Constant Field Values

### DECADE

    public static final int DECADE

See Also:
  Constant Field Values

### YEAR_IN_DECADE

    public static final int YEAR_IN_DECADE

See Also:
  Constant Field Values

Constructor Detail

### CalendarUtils

    public CalendarUtils()

Method Detail

### add

    public static void add(java.util.Calendar calendar,
                           int field,
                           int amount)

  Increments the calendar field of the given calendar by amount.

  Parameters:
    `calendar` -
    `field` - the field to increment, allowed are all fields known to Calendar plus DECADE.
    `amount` -
  Throws:
    `java.lang.IllegalArgumentException`

### get

    public static int get(java.util.Calendar calendar,
                          int field)

  Gets the calendar field of the given calendar by amount.

  Parameters:
    `calendar` -
    `field` - the field to get, allowed are all fields known to Calendar plus DECADE.
  Throws:
    `java.lang.IllegalArgumentException`

### set

    public static void set(java.util.Calendar calendar,
                           int field,
                           int value)

  Sets the calendar field of the given calendar by amount.

  NOTE: the custom field implementations are very naive (JSR-310 will do better) - for decade: value must be positive, value must be a multiple of 10 and is interpreted as the first-year-of-the-decade - for year-in-decade: value is added/substracted to/from the start-of-decade of the date of the given calendar

  Parameters:
    `calendar` -
    `field` - the field to increment, allowed are all fields known to Calendar plus DECADE.
    `value` - the decade to set, must be a
  Throws:
    `java.lang.IllegalArgumentException` - if the field is unsupported or the value is not dividable by 10 or negative.

### getEndOfDST

    public static java.util.Date getEndOfDST(java.util.Calendar calendar)

  Adjusts the Calendar to the end of the day of the last day in DST in the current year or unchanged if not using DST. Returns the calendar's date or null, if not using DST.

  Parameters:
    `calendar` - the calendar to adjust
  Returns:
    the end of day of the last day in DST, or null if not using DST.

### getStartOfDST

    public static java.util.Date getStartOfDST(java.util.Calendar calendar)

  Adjusts the Calendar to the end of the day of the first day in DST in the current year or unchanged if not using DST. Returns the calendar's date or null, if not using DST.

  Note: the start of the day of the first day in DST is ill-defined!

  Parameters:
    `calendar` - the calendar to adjust
  Returns:
    the start of day of the first day in DST, or null if not using DST.

### isStartOfDay

    public static boolean isStartOfDay(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the start of a day (in the calendar's time zone). The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the start of the day, false otherwise.

### isEndOfDay

    public static boolean isEndOfDay(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the end of a day (in the calendar's time zone). The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the end of the day, false otherwise.

### isStartOfMonth

    public static boolean isStartOfMonth(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the start of a month (in the calendar's time zone). Returns true, if the time is the start of the first day of the month, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the start of the first day of the month, false otherwise.

### isEndOfMonth

    public static boolean isEndOfMonth(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the end of a month (in the calendar's time zone). Returns true, if the time is the end of the last day of the month, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the end of the last day of the month, false otherwise.

### isStartOfWeek

    public static boolean isStartOfWeek(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the start of a month (in the calendar's time zone). Returns true, if the time is the start of the first day of the month, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the start of the first day of the month, false otherwise.

### isEndOfWeek

    public static boolean isEndOfWeek(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the end of a week (in the calendar's time zone). Returns true, if the time is the end of the last day of the week, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the end of the last day of the week, false otherwise.

### startOfWeek

    public static void startOfWeek(java.util.Calendar calendar)

  Adjusts the calendar to the start of the current week. That is, first day of the week with all time fields cleared.

  Parameters:
    `calendar` - the calendar to adjust.

### endOfWeek

    public static void endOfWeek(java.util.Calendar calendar)

  Adjusts the calendar to the end of the current week. That is, last day of the week with all time fields at max.

  Parameters:
    `calendar` - the calendar to adjust.

### endOfWeek

    public static java.util.Date endOfWeek(java.util.Calendar calendar,
                                           java.util.Date date)

  Adjusts the calendar to the end of the current week. That is, last day of the week with all time fields at max. The Date of the adjusted Calendar is returned.

  Parameters:
    `calendar` - calendar to adjust.
    `date` - the Date to use.
  Returns:
    the end of the week of the given date

### startOfWeek

    public static java.util.Date startOfWeek(java.util.Calendar calendar,
                                             java.util.Date date)

  Adjusts the calendar to the start of the current week. That is, last day of the week with all time fields at max. The Date of the adjusted Calendar is returned.

  Parameters:
    `calendar` - calendar to adjust.
    `date` - the Date to use.
  Returns:
    the start of the week of the given date

### startOfDecade

    public static void startOfDecade(java.util.Calendar calendar)

  Adjusts the given Calendar to the start of the year.

  Parameters:
    `calendar` - the calendar to adjust.

### startOfDecade

    public static java.util.Date startOfDecade(java.util.Calendar calendar,
                                               java.util.Date date)

  Adjusts the given Calendar to the start of the decade as defined by the given date. Returns the calendar's Date.

  Parameters:
    `calendar` -
    `date` -

### isStartOfDecade

    public static boolean isStartOfDecade(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the start of a year (in the calendar's time zone). Returns true, if the time is the start of the first day of the year, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the start of the first day of the month, false otherwise.

### startOfYear

    public static void startOfYear(java.util.Calendar calendar)

  Adjusts the given Calendar to the start of the year.

  Parameters:
    `calendar` - the calendar to adjust.

### startOfYear

    public static java.util.Date startOfYear(java.util.Calendar calendar,
                                             java.util.Date date)

  Adjusts the given Calendar to the start of the year as defined by the given date. Returns the calendar's Date.

  Parameters:
    `calendar` -
    `date` -

### isStartOfYear

    public static boolean isStartOfYear(java.util.Calendar calendar)

  Returns a boolean indicating if the given calendar represents the start of a year (in the calendar's time zone). Returns true, if the time is the start of the first day of the year, false otherwise. The calendar is unchanged.

  Parameters:
    `calendar` - the calendar to check.
  Returns:
    true if the calendar's time is the start of the first day of the month, false otherwise.

### startOfMonth

    public static void startOfMonth(java.util.Calendar calendar)

  Adjusts the calendar to the start of the current month. That is, first day of the month with all time fields cleared.

  Parameters:
    `calendar` -

### endOfMonth

    public static void endOfMonth(java.util.Calendar calendar)

  Adjusts the calendar to the end of the current month. That is the last day of the month with all time-fields at max.

  Parameters:
    `calendar` -

### startOfDay

    public static java.util.Date startOfDay(java.util.Calendar calendar,
                                            java.util.Date date)

  Adjust the given calendar to the first millisecond of the given date. that is all time fields cleared. The Date of the adjusted Calendar is returned.

  Parameters:
    `calendar` - calendar to adjust.
    `date` - the Date to use.
  Returns:
    the start of the day of the given date

### endOfDay

    public static java.util.Date endOfDay(java.util.Calendar calendar,
                                          java.util.Date date)

  Adjust the given calendar to the last millisecond of the given date. that is all time fields cleared. The Date of the adjusted Calendar is returned.

  Parameters:
    `calendar` - calendar to adjust.
    `date` - the Date to use.
  Returns:
    the end of the day of the given date

### startOfDay

    public static void startOfDay(java.util.Calendar calendar)

  Adjust the given calendar to the first millisecond of the current day. that is all time fields cleared.

  Parameters:
    `calendar` - calendar to adjust.

### endOfDay

    public static void endOfDay(java.util.Calendar calendar)

  Adjust the given calendar to the last millisecond of the specified date.

  Parameters:
    `calendar` - calendar to adjust.

### startOf

    public static void startOf(java.util.Calendar calendar,
                               int field)

  Adjusts the given calendar to the start of the period as indicated by the given field. This delegates to startOfDay, -Week, -Month, -Year as appropriate.

  Parameters:
    `calendar` -
    `field` - the period to adjust, allowed are Calendar.DAY_OF_MONTH, -.MONTH, -.WEEK and YEAR and CalendarUtils.DECADE.

### isStartOf

    public static boolean isStartOf(java.util.Calendar calendar,
                                    int field)

  Returns a boolean indicating if the calendar is set to the start of a period as defined by the given field. This delegates to startOfDay, -Week, -Month, -Year as appropriate. The calendar is unchanged.

  Parameters:
    `calendar` -
    `field` - the period to adjust, allowed are Calendar.DAY_OF_MONTH, -.MONTH, -.WEEK and YEAR and CalendarUtils.DECADE.
  Throws:
    `java.lang.IllegalArgumentException` - if the field is not supported.

### areEqual

    public static boolean areEqual(java.util.Date current,
                                   java.util.Date date)

  Checks the given dates for being equal.

  Parameters:
    `current` - one of the dates to compare
    `date` - the otherr of the dates to compare
  Returns:
    true if the two given dates both are null or both are not null and equal, false otherwise.

### isSameDay

    public static boolean isSameDay(java.util.Calendar today,
                                    java.util.Date now)

  Returns a boolean indicating whether the given Date is the same day as the day in the calendar. Calendar and date are unchanged by the check.

  Parameters:
    `today` - the Calendar representing a date, must not be null.
    `now` - the date to compare to, must not be null
  Returns:
    true if the calendar and date represent the same day in the given calendar.

### isSame

    public static boolean isSame(java.util.Calendar today,
                                 java.util.Date now,
                                 int field)

  Returns a boolean indicating whether the given Date is in the same period as the Date in the calendar, as defined by the calendar field. Calendar and date are unchanged by the check.

  Parameters:
    `today` - the Calendar representing a date, must not be null.
    `now` - the date to compare to, must not be null
  Returns:
    true if the calendar and date represent the same day in the given calendar.

### isFlushed

    public static boolean isFlushed(java.util.Calendar calendar)

  Returns a boolean to indicate whether the given calendar is flushed.

  The only way to guarantee a flushed state is to let client code call getTime or getTimeInMillis. See Despairing in Calendar

  Note: this if for testing only and not entirely safe!

  Parameters:
    `calendar` -
  Returns:

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.