fc.util
Class ThreadLocalCalendar
java.lang.Object
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()) {
mycal.set(Calendar.getInstance());
}
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).
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 |
ThreadLocalCalendar
public ThreadLocalCalendar()
get
public java.util.Calendar get()
set
public void set(java.util.Calendar cal)
isNull
public boolean isNull()
main
public static void main(java.lang.String[] args)
throws java.lang.Exception
- Throws:
java.lang.Exception