Package org.jboss.resteasy.util
Class DateUtil
- java.lang.Object
-
- org.jboss.resteasy.util.DateUtil
-
public class DateUtil extends java.lang.ObjectA utility class for parsing and formatting HTTP dates as used in cookies and other headers. This class handles dates as defined by RFC 2616 section 3.3.1 as well as some other common non-standard formats.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDateUtil.DateParseException
-
Field Summary
Fields Modifier and Type Field Description private static java.util.CollectionDEFAULT_PATTERNSprivate static java.util.DateDEFAULT_TWO_DIGIT_YEAR_STARTprivate static java.util.TimeZoneGMTstatic java.lang.StringPATTERN_ASCTIMEDate format pattern used to parse HTTP date headers in ANSI Casctime()format.static java.lang.StringPATTERN_RFC1036Date format pattern used to parse HTTP date headers in RFC 1036 format.static java.lang.StringPATTERN_RFC1123Date format pattern used to parse HTTP date headers in RFC 1123 format.
-
Constructor Summary
Constructors Modifier Constructor Description privateDateUtil()This class should not be instantiated.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringformatDate(java.util.Date date)Formats the given date according to the RFC 1123 pattern.static java.lang.StringformatDate(java.util.Date date, java.lang.String pattern)Formats the given date according to the specified pattern.static java.util.DateparseDate(java.lang.String dateValue)Parses a date value.static java.util.DateparseDate(java.lang.String dateValue, java.util.Collection dateFormats)Parses the date value using the given date formats.static java.util.DateparseDate(java.lang.String dateValue, java.util.Collection dateFormats, java.util.Date startDate)Parses the date value using the given date formats.
-
-
-
Field Detail
-
PATTERN_RFC1123
public static final java.lang.String PATTERN_RFC1123
Date format pattern used to parse HTTP date headers in RFC 1123 format.- See Also:
- Constant Field Values
-
PATTERN_RFC1036
public static final java.lang.String PATTERN_RFC1036
Date format pattern used to parse HTTP date headers in RFC 1036 format.- See Also:
- Constant Field Values
-
PATTERN_ASCTIME
public static final java.lang.String PATTERN_ASCTIME
Date format pattern used to parse HTTP date headers in ANSI Casctime()format.- See Also:
- Constant Field Values
-
DEFAULT_PATTERNS
private static final java.util.Collection DEFAULT_PATTERNS
-
DEFAULT_TWO_DIGIT_YEAR_START
private static final java.util.Date DEFAULT_TWO_DIGIT_YEAR_START
-
GMT
private static final java.util.TimeZone GMT
-
-
Method Detail
-
parseDate
public static java.util.Date parseDate(java.lang.String dateValue) throws DateUtil.DateParseExceptionParses a date value. The formats used for parsing the date value are retrieved from the default http params.- Parameters:
dateValue- the date value to parse- Returns:
- the parsed date
- Throws:
DateUtil.DateParseException- if the value could not be parsed using any of the supported date formats
-
parseDate
public static java.util.Date parseDate(java.lang.String dateValue, java.util.Collection dateFormats) throws DateUtil.DateParseExceptionParses the date value using the given date formats.- Parameters:
dateValue- the date value to parsedateFormats- the date formats to use- Returns:
- the parsed date
- Throws:
DateUtil.DateParseException- if none of the dataFormats could parse the dateValue
-
parseDate
public static java.util.Date parseDate(java.lang.String dateValue, java.util.Collection dateFormats, java.util.Date startDate) throws DateUtil.DateParseExceptionParses the date value using the given date formats.- Parameters:
dateValue- the date value to parsedateFormats- the date formats to usestartDate- During parsing, two digit years will be placed in the rangestartDatetostartDate + 100 years. This value may benull. Whennullis given as a parameter, year2000will be used.- Returns:
- the parsed date
- Throws:
DateUtil.DateParseException- if none of the dataFormats could parse the dateValue
-
formatDate
public static java.lang.String formatDate(java.util.Date date)
Formats the given date according to the RFC 1123 pattern.- Parameters:
date- The date to format.- Returns:
- An RFC 1123 formatted date string.
- See Also:
PATTERN_RFC1123
-
formatDate
public static java.lang.String formatDate(java.util.Date date, java.lang.String pattern)Formats the given date according to the specified pattern. The pattern must conform to that used by thesimple date formatclass.- Parameters:
date- The date to format.pattern- The pattern to use for formatting the date.- Returns:
- A formatted date string.
- Throws:
java.lang.IllegalArgumentException- If the given date pattern is invalid.- See Also:
SimpleDateFormat
-
-