org.fest.util
Class Dates

java.lang.Object
  extended by org.fest.util.Dates

public class Dates
extends Object

Utility methods related to dates.

Author:
Joel Costigliola

Field Summary
static DateFormat ISO_DATE_FORMAT
          ISO 8601 date format (yyyy-MM-dd), example : 2003-04-23
static DateFormat ISO_DATE_TIME_FORMAT
          ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss), example : 2003-04-26T13:01:02
static DateFormat ISO_DATE_TIME_FORMAT_WITH_MS
          ISO 8601 date-time format with millisecond (yyyy-MM-dd'T'HH:mm:ss.SSS), example : 2003-04-26T03:01:02.999
 
Constructor Summary
Dates()
           
 
Method Summary
static int dayOfMonthOf(Date date)
          Dates Extracts the day of month of the given Date.
static int dayOfWeekOf(Date date)
          Extracts the day of week of the given Date, returned value follows Calendar.DAY_OF_WEEK .
static String formatAsDatetime(Calendar calendar)
          Formats the date of the given calendar using the ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss).
static String formatAsDatetime(Date date)
          Formats the given date using the ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss).
static String formatAsDatetimeWithMs(Date date)
          Formats the given date using the ISO 8601 date-time format with millisecond (yyyy-MM-dd'T'HH:mm:ss:SSS).
static int hourOfDay(Date date)
          Extracts the hour of day if the given Date (24-hour clock).
static int millisecondOf(Date date)
          Extracts the millisecond of the given Date.
static int minuteOf(Date date)
          Dates Extracts the minute of the given Date.
static int monthOf(Date date)
          Dates Extracts the month of the given Date starting at 1 (January=1, February=2, ...).
static Date parse(String dateAsString)
          Utility method to parse a Date following ISO_DATE_FORMAT, returns null if the given String is null.
static Date parseDatetime(String dateAsString)
          Utility method to parse a Date following ISO_DATE_TIME_FORMAT, returns null if the given String is null.
static int secondOf(Date date)
          Extracts the second of the given Date.
static Calendar toCalendar(Date date)
          Converts the given Date to Calendar, returns null if the given Date is null.
static Date today()
           
static Date tomorrow()
           
static Date truncateTime(Date date)
          Returns a copy of the given date without the time part (which is set to 00:00:00), for example :
truncateTime(2008-12-29T23:45:12) will give 2008-12-29T00:00:00.
static int yearOf(Date date)
          Extracts the year of the given Date.
static Date yesterday()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ISO_DATE_FORMAT

public static final DateFormat ISO_DATE_FORMAT
ISO 8601 date format (yyyy-MM-dd), example : 2003-04-23


ISO_DATE_TIME_FORMAT

public static final DateFormat ISO_DATE_TIME_FORMAT
ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss), example : 2003-04-26T13:01:02


ISO_DATE_TIME_FORMAT_WITH_MS

public static final DateFormat ISO_DATE_TIME_FORMAT_WITH_MS
ISO 8601 date-time format with millisecond (yyyy-MM-dd'T'HH:mm:ss.SSS), example : 2003-04-26T03:01:02.999

Constructor Detail

Dates

public Dates()
Method Detail

formatAsDatetime

public static String formatAsDatetime(Date date)
Formats the given date using the ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss).
Method in synchronized because SimpleDateFormat is not thread safe (sigh).

Returns null if given the date is null.

Parameters:
date - the date to format.
Returns:
the formatted date or null if given the date was null.

formatAsDatetimeWithMs

public static String formatAsDatetimeWithMs(Date date)
Formats the given date using the ISO 8601 date-time format with millisecond (yyyy-MM-dd'T'HH:mm:ss:SSS).
Method in synchronized because SimpleDateFormat is not thread safe (sigh).

Returns null if given the date is null.

Parameters:
date - the date to format.
Returns:
the formatted date or null if given the date was null.

formatAsDatetime

public static String formatAsDatetime(Calendar calendar)
Formats the date of the given calendar using the ISO 8601 date-time format (yyyy-MM-dd'T'HH:mm:ss).
Method is thread safe.

Returns null if the given calendar is null.

Parameters:
calendar - the calendar to format.
Returns:
the formatted calendar or null if the given calendar was null.

parse

public static Date parse(String dateAsString)
Utility method to parse a Date following ISO_DATE_FORMAT, returns null if the given String is null.

Parameters:
dateAsString - the string to parse as a Date following ISO_DATE_FORMAT
Returns:
the corrresponding Date or null if the given String is null.
Throws:
RuntimeException - encapsulating ParseException if the string can't be parsed as a Date

parseDatetime

public static Date parseDatetime(String dateAsString)
Utility method to parse a Date following ISO_DATE_TIME_FORMAT, returns null if the given String is null.

Parameters:
dateAsString - the string to parse as a Date following ISO_DATE_TIME_FORMAT
Returns:
the corrresponding Date with time details or null if the given String is null.
Throws:
RuntimeException - encapsulating ParseException if the string can't be parsed as a Date

toCalendar

public static Calendar toCalendar(Date date)
Converts the given Date to Calendar, returns null if the given Date is null.

Parameters:
date - the date to convert to a Calendar.
Returns:
the Calendar corresponding to the given Date or null if the given Date is null.

yearOf

public static int yearOf(Date date)
Extracts the year of the given Date.

Parameters:
date - the date to extract the year from - must not be null.
Returns:
the year of the given Date
Throws:
NullPointerException - if given Date is null

monthOf

public static int monthOf(Date date)
Dates Extracts the month of the given Date starting at 1 (January=1, February=2, ...).

Parameters:
date - the date to extract the month from - must not be null.
Returns:
the month of the given Date starting at 1 (January=1, February=2, ...)
Throws:
NullPointerException - if given Date is null

dayOfMonthOf

public static int dayOfMonthOf(Date date)
Dates Extracts the day of month of the given Date.

Parameters:
date - the date to extract the day of month from - must not be null.
Returns:
the day of month of the given Date
Throws:
NullPointerException - if given Date is null

dayOfWeekOf

public static int dayOfWeekOf(Date date)
Extracts the day of week of the given Date, returned value follows Calendar.DAY_OF_WEEK .

Parameters:
date - the date to extract the day of week from - must not be null.
Returns:
the day of week of the given Date
Throws:
NullPointerException - if given Date is null

hourOfDay

public static int hourOfDay(Date date)
Extracts the hour of day if the given Date (24-hour clock).

Parameters:
date - the date to extract the hour of day from - must not be null.
Returns:
the hour of day of the given Date (24-hour clock)
Throws:
NullPointerException - if given Date is null

minuteOf

public static int minuteOf(Date date)
Dates Extracts the minute of the given Date.

Parameters:
date - the date to extract the minute from - must not be null.
Returns:
the minute of the given Date
Throws:
NullPointerException - if given Date is null

secondOf

public static int secondOf(Date date)
Extracts the second of the given Date.

Parameters:
date - the date to extract the second from - must not be null.
Returns:
the second of the given Date
Throws:
NullPointerException - if given Date is null

millisecondOf

public static int millisecondOf(Date date)
Extracts the millisecond of the given Date.

Parameters:
date - the date to extract the millisecond from - must not be null.
Returns:
the millisecond of the given Date
Throws:
NullPointerException - if given Date is null

truncateTime

public static Date truncateTime(Date date)
Returns a copy of the given date without the time part (which is set to 00:00:00), for example :
truncateTime(2008-12-29T23:45:12) will give 2008-12-29T00:00:00.

Returns null if the given Date is null.

Parameters:
date - we want to get the day part (the parameter is read only).
Returns:
the truncated date.

today

public static Date today()

yesterday

public static Date yesterday()

tomorrow

public static Date tomorrow()


Copyright © 2007-2012 FEST (Fixtures for Easy Software Testing). All Rights Reserved.