com.atlassian.plugin.event.impl
Class DefaultPluginEventManager

java.lang.Object
  extended by com.atlassian.plugin.event.impl.DefaultPluginEventManager
All Implemented Interfaces:
PluginEventManager

public class DefaultPluginEventManager
extends java.lang.Object
implements PluginEventManager

Simple, synchronous event manager that uses one or more method selectors to determine event listeners. The default method selectors are MethodNameListenerMethodSelector and AnnotationListenerMethodSelector.


Constructor Summary
DefaultPluginEventManager()
          Default constructor that looks for methods named "channel" and the @PluginEventListener annotations
DefaultPluginEventManager(ListenerMethodSelector[] selectors)
          Constructor that looks for an arbitrary selectors
 
Method Summary
 void broadcast(java.lang.Object event)
          Broadcasts an event to all applicable listeners.
 void register(java.lang.Object listener)
          Registers a listener by scanning the object for all listener methods
 void unregister(java.lang.Object listener)
          Unregisters the listener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultPluginEventManager

public DefaultPluginEventManager()
Default constructor that looks for methods named "channel" and the @PluginEventListener annotations


DefaultPluginEventManager

public DefaultPluginEventManager(ListenerMethodSelector[] selectors)
Constructor that looks for an arbitrary selectors

Parameters:
selectors - List of selectors that determine which are listener methods
Method Detail

broadcast

public void broadcast(java.lang.Object event)
               throws NotificationException
Description copied from interface: PluginEventManager
Broadcasts an event to all applicable listeners.

Specified by:
broadcast in interface PluginEventManager
Parameters:
event - The event object. Cannot be null.
Throws:
NotificationException - If an exception is thrown by one of the Event Listeners.

register

public void register(java.lang.Object listener)
              throws java.lang.IllegalArgumentException
Registers a listener by scanning the object for all listener methods

Specified by:
register in interface PluginEventManager
Parameters:
listener - The listener object
Throws:
java.lang.IllegalArgumentException - If the listener is null, contains a listener method with 0 or 2 or more arguments, or contains no listener methods

unregister

public void unregister(java.lang.Object listener)
Unregisters the listener

Specified by:
unregister in interface PluginEventManager
Parameters:
listener - The listener


Copyright © 2009 Atlassian. All Rights Reserved.