Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

org.objectstyle.cayenne.event
Class EventManager  view EventManager download EventManager.java

java.lang.Object
  extended byorg.objectstyle.cayenne.event.EventManager

public class EventManager
extends java.lang.Object

This class acts as bridge between an Object that wants to inform others about its current state or a change thereof (Publisher) and a list of objects interested in the Subject (Listeners).


Field Summary
private static EventManager _defaultManager
           
private  java.util.Map _subjects
           
 
Constructor Summary
EventManager()
          Default constructor for new EventManager instances, in case you need one.
 
Method Summary
 void addListener(java.util.EventListener listener, java.lang.String methodName, java.lang.Class eventParameterClass, EventSubject subject)
          Register an EventListener for events sent by any sender.
 void addListener(java.util.EventListener listener, java.lang.String methodName, java.lang.Class eventParameterClass, EventSubject subject, java.lang.Object sender)
          Register an EventListener for events sent by a specific sender.
static EventManager getDefaultManager()
          This method will return the shared 'default' EventManager.
private  java.util.Set invocationQueueForSubjectAndSender(EventSubject subject, java.lang.Object sender)
           
private  java.util.Map invocationQueuesForSubject(EventSubject subject)
           
 void postEvent(java.util.EventObject event, EventSubject subject)
          Sends an event to all registered objects about a particular subject.
 boolean removeListener(java.util.EventListener listener)
          Unregister the specified listener from all event subjects handled by this EventManager instance.
 boolean removeListener(java.util.EventListener listener, EventSubject subject)
          Unregister the specified listener for the events about the given subject.
 boolean removeListener(java.util.EventListener listener, EventSubject subject, java.lang.Object sender)
          Unregister the specified listener for the events about the given subject and the given sender.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_defaultManager

private static final EventManager _defaultManager

_subjects

private java.util.Map _subjects
Constructor Detail

EventManager

public EventManager()
Default constructor for new EventManager instances, in case you need one.

Method Detail

getDefaultManager

public static EventManager getDefaultManager()
This method will return the shared 'default' EventManager.


addListener

public void addListener(java.util.EventListener listener,
                        java.lang.String methodName,
                        java.lang.Class eventParameterClass,
                        EventSubject subject)
                 throws java.lang.NoSuchMethodException
Register an EventListener for events sent by any sender.


addListener

public void addListener(java.util.EventListener listener,
                        java.lang.String methodName,
                        java.lang.Class eventParameterClass,
                        EventSubject subject,
                        java.lang.Object sender)
                 throws java.lang.NoSuchMethodException
Register an EventListener for events sent by a specific sender.


removeListener

public boolean removeListener(java.util.EventListener listener)
Unregister the specified listener from all event subjects handled by this EventManager instance.


removeListener

public boolean removeListener(java.util.EventListener listener,
                              EventSubject subject)
Unregister the specified listener for the events about the given subject.


removeListener

public boolean removeListener(java.util.EventListener listener,
                              EventSubject subject,
                              java.lang.Object sender)
Unregister the specified listener for the events about the given subject and the given sender.


postEvent

public void postEvent(java.util.EventObject event,
                      EventSubject subject)
Sends an event to all registered objects about a particular subject.


invocationQueuesForSubject

private java.util.Map invocationQueuesForSubject(EventSubject subject)

invocationQueueForSubjectAndSender

private java.util.Set invocationQueueForSubjectAndSender(EventSubject subject,
                                                         java.lang.Object sender)