# Class ConcurrentDateFormat

java.lang.Object
org.apache.tomcat.util.http.ConcurrentDateFormat

public class ConcurrentDateFormat extends Object
A thread safe wrapper around `SimpleDateFormat` that does not make use of ThreadLocal and - broadly - only creates enough SimpleDateFormat objects to satisfy the concurrency requirements.

## Constructor Summary

Constructors
Constructor
Description
`ConcurrentDateFormat(String format, Locale locale, TimeZone timezone)`
Creates a thread-safe date formatter with the specified format, locale, and timezone.

## Method Summary

Modifier and Type
Method
Description
`String`
`format(Date date)`
Formats the given date into a string using the configured format pattern.
`Date`
`parse(String source)`
Parses the given string into a date using the configured format pattern.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### ConcurrentDateFormat

public ConcurrentDateFormat(String format, Locale locale, TimeZone timezone)
Creates a thread-safe date formatter with the specified format, locale, and timezone.

Parameters:
  `format` - the date format pattern
  `locale` - the locale to use for formatting
  `timezone` - the time zone to use for formatting

## Method Details

### format

public String format(Date date)
Formats the given date into a string using the configured format pattern.

Parameters:
  `date` - the date to format
Returns:
  the formatted date string

### parse

public Date parse(String source) throws ParseException
Parses the given string into a date using the configured format pattern.

Parameters:
  `source` - the string to parse
Returns:
  the parsed date
Throws:
  `ParseException` - if the string cannot be parsed