public final class DateFormatter
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private java.util.GregorianCalendar |
cal |
private static java.lang.String[] |
CALENDAR_MONTH_TO_SHORT_NAME |
private static java.lang.String[] |
DAY_OF_WEEK_TO_SHORT_NAME |
private int |
dayOfMonth |
private boolean |
dayOfMonthFound |
private static java.util.BitSet |
DELIMITERS |
private int |
hours |
private static FastThreadLocal<DateFormatter> |
INSTANCES |
private int |
minutes |
private int |
month |
private boolean |
monthFound |
private java.lang.StringBuilder |
sb |
private int |
seconds |
private boolean |
timeFound |
private int |
year |
private boolean |
yearFound |
Modifier | Constructor and Description |
---|---|
private |
DateFormatter() |
Modifier and Type | Method and Description |
---|---|
static java.lang.StringBuilder |
append(java.util.Date date,
java.lang.StringBuilder sb)
Append a
Date to a StringBuilder into RFC1123 format |
private java.lang.StringBuilder |
append0(java.util.Date date,
java.lang.StringBuilder sb) |
private static java.lang.StringBuilder |
appendZeroLeftPadded(int value,
java.lang.StringBuilder sb) |
private java.util.Date |
computeDate() |
static java.lang.String |
format(java.util.Date date)
Format a
Date into RFC1123 format |
private java.lang.String |
format0(java.util.Date date) |
private static DateFormatter |
formatter() |
private static int |
getNumericalValue(char c) |
private static boolean |
isDelim(char c) |
private static boolean |
isDigit(char c) |
private static boolean |
matchMonth(java.lang.String month,
java.lang.CharSequence txt,
int tokenStart) |
private boolean |
normalizeAndValidate() |
private java.util.Date |
parse0(java.lang.CharSequence txt,
int start,
int end) |
private boolean |
parse1(java.lang.CharSequence txt,
int start,
int end) |
static java.util.Date |
parseHttpDate(java.lang.CharSequence txt)
Parse some text into a
Date , according to RFC6265 |
static java.util.Date |
parseHttpDate(java.lang.CharSequence txt,
int start,
int end)
Parse some text into a
Date , according to RFC6265 |
private boolean |
parseToken(java.lang.CharSequence txt,
int tokenStart,
int tokenEnd) |
void |
reset() |
private boolean |
tryParseDayOfMonth(java.lang.CharSequence txt,
int tokenStart,
int tokenEnd) |
private boolean |
tryParseMonth(java.lang.CharSequence txt,
int tokenStart,
int tokenEnd) |
private boolean |
tryParseTime(java.lang.CharSequence txt,
int tokenStart,
int tokenEnd) |
private boolean |
tryParseYear(java.lang.CharSequence txt,
int tokenStart,
int tokenEnd) |
private static final java.util.BitSet DELIMITERS
private static final java.lang.String[] DAY_OF_WEEK_TO_SHORT_NAME
private static final java.lang.String[] CALENDAR_MONTH_TO_SHORT_NAME
private static final FastThreadLocal<DateFormatter> INSTANCES
private final java.util.GregorianCalendar cal
private final java.lang.StringBuilder sb
private boolean timeFound
private int hours
private int minutes
private int seconds
private boolean dayOfMonthFound
private int dayOfMonth
private boolean monthFound
private int month
private boolean yearFound
private int year
public static java.util.Date parseHttpDate(java.lang.CharSequence txt)
Date
, according to RFC6265txt
- text to parseDate
, or null if text couldn't be parsedpublic static java.util.Date parseHttpDate(java.lang.CharSequence txt, int start, int end)
Date
, according to RFC6265txt
- text to parsestart
- the start index inside txt
end
- the end index inside txt
Date
, or null if text couldn't be parsedpublic static java.lang.String format(java.util.Date date)
Date
into RFC1123 formatdate
- the date to formatpublic static java.lang.StringBuilder append(java.util.Date date, java.lang.StringBuilder sb)
Date
to a StringBuilder
into RFC1123 formatdate
- the date to formatsb
- the StringBuilderprivate static DateFormatter formatter()
private static boolean isDelim(char c)
private static boolean isDigit(char c)
private static int getNumericalValue(char c)
public void reset()
private boolean tryParseTime(java.lang.CharSequence txt, int tokenStart, int tokenEnd)
private boolean tryParseDayOfMonth(java.lang.CharSequence txt, int tokenStart, int tokenEnd)
private static boolean matchMonth(java.lang.String month, java.lang.CharSequence txt, int tokenStart)
private boolean tryParseMonth(java.lang.CharSequence txt, int tokenStart, int tokenEnd)
private boolean tryParseYear(java.lang.CharSequence txt, int tokenStart, int tokenEnd)
private boolean parseToken(java.lang.CharSequence txt, int tokenStart, int tokenEnd)
private java.util.Date parse0(java.lang.CharSequence txt, int start, int end)
private boolean parse1(java.lang.CharSequence txt, int start, int end)
private boolean normalizeAndValidate()
private java.util.Date computeDate()
private java.lang.String format0(java.util.Date date)
private java.lang.StringBuilder append0(java.util.Date date, java.lang.StringBuilder sb)
private static java.lang.StringBuilder appendZeroLeftPadded(int value, java.lang.StringBuilder sb)