Class ThreadLocalCalendar

  extended by fc.util.ThreadLocalCalendar

public final class ThreadLocalCalendar
extends java.lang.Object

Useful to store thread-local calendar 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 seperate 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 seperate calendar instance and store it via the set method. The usage idiom is:

//WebApp has a map of ThreadLocalCalendars and also a instance variable
//with a default ThreadLocalCalendar
ThreadLocalCalendar mycal = WebApp.getThreadLocalCalendar("foo");

if (mycal.isNull())  {

Calendar cal = mycal.get();

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

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

Constructor Detail


public ThreadLocalCalendar()
Method Detail


public java.util.Calendar get()


public void set(java.util.Calendar cal)


public boolean isNull()


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