Figure 6: Notifying subscribers of an event
protected void notifyFired() { TimerEvent evt = new TimerEvent(this, theNumber, theCount); Vector v; synchronized(this) { v = (Vector) listeners.clone(); } int cnt = v.size(); for (int k=0; k<cnt; k++) { TimerListener client = (TimerListener) v.elementAt(k); client.timerFired(evt); } }