com.partnersoft.gadgets
Class EventMulticaster

java.lang.Object
  extended by com.partnersoft.gadgets.EventMulticaster

public abstract class EventMulticaster
extends java.lang.Object

A utility for managing Event multicasting. Use it as an inline class like so: specificEventMulticaster = new EventMulticaster() { protected void dispatchEvent(EventListener listener, EventObject evt) { ((SpecificEventListener)listener).takeSpecificEvent((SpecificEvent)evt); } }; Then use it like so: specificEventMulticaster.dispatchEvent(new SpecificEvent()); It's not type-safe, so the surrounding class should be. A listener can only be registered once; adding one twice is the same as adding it once.

Version:
1.0 3/5/97
Author:
Paul Reavis

Constructor Summary
EventMulticaster()
           
 
Method Summary
 void addListener(java.util.EventListener listener)
          Adds a listener.
 void addListenerImp(java.util.EventListener listener)
           
protected abstract  void dispatchEvent(java.util.EventListener listener, java.util.EventObject evt)
          Dispatches event to a single listener.
 void dispatchEvent(java.util.EventObject evt)
          Dispatches event to all listeners.
 void removeListener(java.util.EventListener listener)
          Removes a listener.
 void removeListenerImp(java.util.EventListener listener)
          Removes a listener.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EventMulticaster

public EventMulticaster()
Method Detail

addListener

public void addListener(java.util.EventListener listener)
Adds a listener.


removeListener

public void removeListener(java.util.EventListener listener)
Removes a listener.


dispatchEvent

public void dispatchEvent(java.util.EventObject evt)
Dispatches event to all listeners.


dispatchEvent

protected abstract void dispatchEvent(java.util.EventListener listener,
                                      java.util.EventObject evt)
Dispatches event to a single listener. Subclasses must override this.


addListenerImp

public void addListenerImp(java.util.EventListener listener)

removeListenerImp

public void removeListenerImp(java.util.EventListener listener)
Removes a listener.