01: /**
02: * CurrentDate.java
03: * Created on 13.02.2003, 2:11:03 Alex
04: * Package: net.sf.memoranda.date
05: *
06: * @author Alex V. Alishevskikh, alex@openmechanics.net
07: * Copyright (c) 2003 Memoranda Team. http://memoranda.sf.net
08: */package net.sf.memoranda.date;
09:
10: import java.util.Collection;
11: import java.util.Vector;
12:
13: /**
14: *
15: */
16: /*$Id: CurrentDate.java,v 1.4 2004/10/06 16:00:12 ivanrise Exp $*/
17: public class CurrentDate {
18:
19: private static CalendarDate _date = new CalendarDate();
20: private static Vector dateListeners = new Vector();
21:
22: public static CalendarDate get() {
23: return _date;
24: }
25:
26: public static void set(CalendarDate date) {
27: if (date.equals(_date))
28: return;
29: _date = date;
30: dateChanged(date);
31: }
32:
33: public static void reset() {
34: set(new CalendarDate());
35: }
36:
37: public static void addDateListener(DateListener dl) {
38: dateListeners.add(dl);
39: }
40:
41: public static Collection getChangeListeners() {
42: return dateListeners;
43: }
44:
45: private static void dateChanged(CalendarDate date) {
46: for (int i = 0; i < dateListeners.size(); i++)
47: ((DateListener) dateListeners.get(i)).dateChange(date);
48: }
49: }
|