Package org.codehaus.jackson.map.util
Class StdDateFormat
- java.lang.Object
-
- java.text.Format
-
- java.text.DateFormat
-
- org.codehaus.jackson.map.util.StdDateFormat
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
public class StdDateFormat extends java.text.DateFormat
DefaultDateFormat
implementation used by standard Date serializers and deserializers. For serialization defaults to using an ISO-8601 compliant format (format String "yyyy-MM-dd'T'HH:mm:ss.SSSZ") and for deserialization, both ISO-8601 and RFC-1123.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected java.text.DateFormat
_formatISO8601
protected java.text.DateFormat
_formatISO8601_z
protected java.text.DateFormat
_formatPlain
protected java.text.DateFormat
_formatRFC1123
protected static java.lang.String[]
ALL_FORMATS
For error messages we'll also need a list of all formats.protected static java.text.DateFormat
DATE_FORMAT_ISO8601
protected static java.text.DateFormat
DATE_FORMAT_ISO8601_Z
protected static java.text.DateFormat
DATE_FORMAT_PLAIN
protected static java.text.DateFormat
DATE_FORMAT_RFC1123
protected static java.lang.String
DATE_FORMAT_STR_ISO8601
Defines a commonly used date format that conforms to ISO-8601 date formatting standard, when it includes basic undecorated timezone definitionprotected static java.lang.String
DATE_FORMAT_STR_ISO8601_Z
Same as 'regular' 8601, but handles 'Z' as an alias for "+0000" (or "GMT")protected static java.lang.String
DATE_FORMAT_STR_PLAIN
ISO-8601 with just the Date part, no timeprotected static java.lang.String
DATE_FORMAT_STR_RFC1123
This constant defines the date format specified by RFC 1123.static StdDateFormat
instance
A singleton instance can be used for cloning purposes.-
Fields inherited from class java.text.DateFormat
AM_PM_FIELD, calendar, DATE_FIELD, DAY_OF_WEEK_FIELD, DAY_OF_WEEK_IN_MONTH_FIELD, DAY_OF_YEAR_FIELD, DEFAULT, ERA_FIELD, FULL, HOUR_OF_DAY0_FIELD, HOUR_OF_DAY1_FIELD, HOUR0_FIELD, HOUR1_FIELD, LONG, MEDIUM, MILLISECOND_FIELD, MINUTE_FIELD, MONTH_FIELD, numberFormat, SECOND_FIELD, SHORT, TIMEZONE_FIELD, WEEK_OF_MONTH_FIELD, WEEK_OF_YEAR_FIELD, YEAR_FIELD
-
-
Constructor Summary
Constructors Constructor Description StdDateFormat()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StdDateFormat
clone()
java.lang.StringBuffer
format(java.util.Date date, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
static java.text.DateFormat
getBlueprintISO8601Format()
Method for getting the globally shared DateFormat instance that uses GMT timezone and can handle simple ISO-8601 compliant date format.static java.text.DateFormat
getBlueprintRFC1123Format()
Method for getting the globally shared DateFormat instance that uses GMT timezone and can handle RFC-1123 compliant date format.static java.text.DateFormat
getISO8601Format(java.util.TimeZone tz)
Method for getting a non-shared DateFormat instance that uses specified timezone and can handle simple ISO-8601 compliant date format.static java.text.DateFormat
getRFC1123Format(java.util.TimeZone tz)
Method for getting a non-shared DateFormat instance that uses specific timezone and can handle RFC-1123 compliant date format.protected boolean
looksLikeISO8601(java.lang.String dateStr)
Overridable helper method used to figure out which of supported formats is the likeliest match.java.util.Date
parse(java.lang.String dateStr)
java.util.Date
parse(java.lang.String dateStr, java.text.ParsePosition pos)
protected java.util.Date
parseAsISO8601(java.lang.String dateStr, java.text.ParsePosition pos)
protected java.util.Date
parseAsRFC1123(java.lang.String dateStr, java.text.ParsePosition pos)
-
Methods inherited from class java.text.DateFormat
equals, format, format, getAvailableLocales, getCalendar, getDateInstance, getDateInstance, getDateInstance, getDateTimeInstance, getDateTimeInstance, getDateTimeInstance, getInstance, getNumberFormat, getTimeInstance, getTimeInstance, getTimeInstance, getTimeZone, hashCode, isLenient, parseObject, setCalendar, setLenient, setNumberFormat, setTimeZone
-
-
-
-
Field Detail
-
DATE_FORMAT_STR_ISO8601
protected static final java.lang.String DATE_FORMAT_STR_ISO8601
Defines a commonly used date format that conforms to ISO-8601 date formatting standard, when it includes basic undecorated timezone definition- See Also:
- Constant Field Values
-
DATE_FORMAT_STR_ISO8601_Z
protected static final java.lang.String DATE_FORMAT_STR_ISO8601_Z
Same as 'regular' 8601, but handles 'Z' as an alias for "+0000" (or "GMT")- See Also:
- Constant Field Values
-
DATE_FORMAT_STR_PLAIN
protected static final java.lang.String DATE_FORMAT_STR_PLAIN
ISO-8601 with just the Date part, no time- Since:
- 1.3.1
- See Also:
- Constant Field Values
-
DATE_FORMAT_STR_RFC1123
protected static final java.lang.String DATE_FORMAT_STR_RFC1123
This constant defines the date format specified by RFC 1123.- See Also:
- Constant Field Values
-
ALL_FORMATS
protected static final java.lang.String[] ALL_FORMATS
For error messages we'll also need a list of all formats.
-
DATE_FORMAT_RFC1123
protected static final java.text.DateFormat DATE_FORMAT_RFC1123
-
DATE_FORMAT_ISO8601
protected static final java.text.DateFormat DATE_FORMAT_ISO8601
-
DATE_FORMAT_ISO8601_Z
protected static final java.text.DateFormat DATE_FORMAT_ISO8601_Z
-
DATE_FORMAT_PLAIN
protected static final java.text.DateFormat DATE_FORMAT_PLAIN
-
instance
public static final StdDateFormat instance
A singleton instance can be used for cloning purposes.
-
_formatRFC1123
protected transient java.text.DateFormat _formatRFC1123
-
_formatISO8601
protected transient java.text.DateFormat _formatISO8601
-
_formatISO8601_z
protected transient java.text.DateFormat _formatISO8601_z
-
_formatPlain
protected transient java.text.DateFormat _formatPlain
-
-
Method Detail
-
clone
public StdDateFormat clone()
- Overrides:
clone
in classjava.text.DateFormat
-
getBlueprintISO8601Format
public static java.text.DateFormat getBlueprintISO8601Format()
Method for getting the globally shared DateFormat instance that uses GMT timezone and can handle simple ISO-8601 compliant date format.
-
getISO8601Format
public static java.text.DateFormat getISO8601Format(java.util.TimeZone tz)
Method for getting a non-shared DateFormat instance that uses specified timezone and can handle simple ISO-8601 compliant date format.
-
getBlueprintRFC1123Format
public static java.text.DateFormat getBlueprintRFC1123Format()
Method for getting the globally shared DateFormat instance that uses GMT timezone and can handle RFC-1123 compliant date format.
-
getRFC1123Format
public static java.text.DateFormat getRFC1123Format(java.util.TimeZone tz)
Method for getting a non-shared DateFormat instance that uses specific timezone and can handle RFC-1123 compliant date format.
-
parse
public java.util.Date parse(java.lang.String dateStr) throws java.text.ParseException
- Overrides:
parse
in classjava.text.DateFormat
- Throws:
java.text.ParseException
-
parse
public java.util.Date parse(java.lang.String dateStr, java.text.ParsePosition pos)
- Specified by:
parse
in classjava.text.DateFormat
-
format
public java.lang.StringBuffer format(java.util.Date date, java.lang.StringBuffer toAppendTo, java.text.FieldPosition fieldPosition)
- Specified by:
format
in classjava.text.DateFormat
-
looksLikeISO8601
protected boolean looksLikeISO8601(java.lang.String dateStr)
Overridable helper method used to figure out which of supported formats is the likeliest match.
-
parseAsISO8601
protected java.util.Date parseAsISO8601(java.lang.String dateStr, java.text.ParsePosition pos)
-
parseAsRFC1123
protected java.util.Date parseAsRFC1123(java.lang.String dateStr, java.text.ParsePosition pos)
-
-