Package com.cedarsoftware.util
Class SafeSimpleDateFormat
java.lang.Object
java.text.Format
java.text.DateFormat
com.cedarsoftware.util.SafeSimpleDateFormat
- All Implemented Interfaces:
Serializable
,Cloneable
This class implements a Thread-Safe (re-entrant) SimpleDateFormat
class. It does this by using a ThreadLocal that holds a Map, instead
of the traditional approach to hold the SimpleDateFormat in a ThreadLocal.
Each ThreadLocal holds a single HashMap containing SimpleDateFormats, keyed
by a String format (e.g. "yyyy/M/d", etc.), for each new SimpleDateFormat
instance that was created within the threads execution context.
- Author:
- John DeRegnaucourt ([email protected])
Copyright (c) Cedar Software LLC
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
License
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. - See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.text.DateFormat
DateFormat.Field
-
Field Summary
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 -
Method Summary
Modifier and TypeMethodDescriptionboolean
format
(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition) static SimpleDateFormat
getDateFormat
(String format) int
hashCode()
parse
(String source, ParsePosition pos) void
set2DigitYearStart
(Date date) void
setCalendar
(Calendar cal) void
setDateFormatSymbols
(DateFormatSymbols symbols) void
setLenient
(boolean lenient) void
setNumberFormat
(NumberFormat format) void
setTimeZone
(TimeZone tz) toString()
Methods inherited from class java.text.DateFormat
clone, format, format, getAvailableLocales, getCalendar, getDateInstance, getDateInstance, getDateInstance, getDateTimeInstance, getDateTimeInstance, getDateTimeInstance, getInstance, getNumberFormat, getTimeInstance, getTimeInstance, getTimeInstance, getTimeZone, isLenient, parse, parseObject
Methods inherited from class java.text.Format
format, formatToCharacterIterator, parseObject
-
Constructor Details
-
SafeSimpleDateFormat
-
-
Method Details
-
getDateFormat
-
format
- Specified by:
format
in classDateFormat
-
parse
- Specified by:
parse
in classDateFormat
-
setTimeZone
- Overrides:
setTimeZone
in classDateFormat
-
setCalendar
- Overrides:
setCalendar
in classDateFormat
-
setNumberFormat
- Overrides:
setNumberFormat
in classDateFormat
-
setLenient
public void setLenient(boolean lenient) - Overrides:
setLenient
in classDateFormat
-
setDateFormatSymbols
-
set2DigitYearStart
-
toString
-
equals
- Overrides:
equals
in classDateFormat
-
hashCode
public int hashCode()- Overrides:
hashCode
in classDateFormat
-