Class ThreadLocalDateFormat

  extended by fc.util.ThreadLocalDateFormat

public final class ThreadLocalDateFormat
extends Object

Useful to store thread-local date format instances. This class is intended for servlets/molly pages. Instead of static get/set methods, this class must be instantiated and the instance methods used to get/set the calendar object. This allows multiple instances of this class in the webapp, with each instance being able to get/set a separate calendar. [If the methods in this class were static, then only 1 calendar could be get/set per thread].

Each thread must remember to individually create a separate calendar instance and store it via the set method. The usage idiom is:

//WebApp has a map of ThreadLocalDateFormat's and also a instance variable
//pointing to a default ThreadLocalDateFormat
ThreadLocalDateFormat mydf = WebApp.getThreadLocalDateFormat("foo");

if (mydf.isNull())  {

DateFormat df = mydf.get();

Note, the lines in red are always needed anywhere/anytime this class is used. (note, it just so happens that the DateFormat.getInstance() returns (at least for now) a new object every time it is called, which is why it is being used in the example above, else we would have to manually create a new DateFormat instance instead).

Constructor Summary
Method Summary
 DateFormat get()
 boolean isNull()
static void main(String[] args)
 void set(DateFormat df)
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public ThreadLocalDateFormat()
Method Detail


public DateFormat get()


public void set(DateFormat df)


public boolean isNull()


public static void main(String[] args)
                 throws Exception