diff --git a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java index e97d6b0e4..5a70d3a5d 100644 --- a/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java +++ b/src/main/java/org/apache/commons/lang3/time/FastDatePrinter.java @@ -394,19 +394,28 @@ public StringBuffer format(Object obj, StringBuffer toAppendTo, FieldPosition po */ @Override public String format(long millis) { - Calendar c = new GregorianCalendar(mTimeZone, mLocale); // hard code GregorianCalendar + Calendar c = newCalendar(); // hard code GregorianCalendar c.setTimeInMillis(millis); + return applyRulesToString(c); + } + + private String applyRulesToString(Calendar c) { return applyRules(c, new StringBuffer(mMaxLengthEstimate)).toString(); } + private GregorianCalendar newCalendar() { + // hard code GregorianCalendar + return new GregorianCalendar(mTimeZone, mLocale); + } + /* (non-Javadoc) * @see org.apache.commons.lang3.time.DatePrinter#format(java.util.Date) */ @Override public String format(Date date) { - Calendar c = new GregorianCalendar(mTimeZone, mLocale); // hard code GregorianCalendar + Calendar c = newCalendar(); // hard code GregorianCalendar c.setTime(date); - return applyRules(c, new StringBuffer(mMaxLengthEstimate)).toString(); + return applyRulesToString(c); } /* (non-Javadoc) @@ -430,7 +439,7 @@ public StringBuffer format(long millis, StringBuffer buf) { */ @Override public StringBuffer format(Date date, StringBuffer buf) { - Calendar c = new GregorianCalendar(mTimeZone, mLocale); // hard code GregorianCalendar + Calendar c = newCalendar(); // hard code GregorianCalendar c.setTime(date); return applyRules(c, buf); }