eXo Kernel :: Component :: Common Service 2.4.3-CLD

org.exoplatform.services.listener
Class ListenerService

java.lang.Object
  extended by org.exoplatform.services.listener.ListenerService

public class ListenerService
extends Object

Created by The eXo Platform SAS Author : Nhu Dinh Thuan nhudinhthuan@exoplatform.com Apr 6, 2007


Nested Class Summary
protected  class ListenerService.AsynchronousListener<S,D>
          This AsynchronousListener is a wrapper for original listener, that executes wrapped listeners onEvent() in separate thread.
protected  class ListenerService.RunListener<S,D>
          This thread executes listener.onEvent(event) method.
 
Constructor Summary
ListenerService(ExoContainerContext ctx)
          Construct a listener service.
ListenerService(ExoContainerContext ctx, InitialContextInitializer initializer)
          Construct a listener service.
ListenerService(ExoContainerContext ctx, InitialContextInitializer initializer, InitParams params)
          Construct a listener service.
ListenerService(ExoContainerContext ctx, InitParams params)
          Construct a listener service.
 
Method Summary
 void addListener(Listener listener)
          This method is used to register a ListenerService.AsynchronousListener to the events of the same name.
 void addListener(String eventName, Listener listener)
          This method is used to register a new ListenerService.AsynchronousListener.
<S,D> void
broadcast(String name, S source, D data)
          This method is used to broadcast an event.
<T extends Event>
void
broadcast(T event)
          This method is used when a developer want to implement his own event object and broadcast the event.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ListenerService

public ListenerService(ExoContainerContext ctx)
Construct a listener service.


ListenerService

public ListenerService(ExoContainerContext ctx,
                       InitialContextInitializer initializer)
Construct a listener service.


ListenerService

public ListenerService(ExoContainerContext ctx,
                       InitParams params)
Construct a listener service.


ListenerService

public ListenerService(ExoContainerContext ctx,
                       InitialContextInitializer initializer,
                       InitParams params)
Construct a listener service.

Method Detail

addListener

public void addListener(Listener listener)
This method is used to register a ListenerService.AsynchronousListener to the events of the same name. It is similar to addListener(listener.getName(), listener)

Parameters:
listener - the listener to notify any time an even of the same name is triggered

addListener

public void addListener(String eventName,
                        Listener listener)
This method is used to register a new ListenerService.AsynchronousListener. Any time an event of the given event name has been triggered, the ListenerService.AsynchronousListener will be notified. This method will:
  1. Check if it exists a list of listeners that have been registered for the given event name, create a new list if no list exists
  2. Add the listener to the list

Parameters:
eventName - The name of the event to listen to
listener - The Listener to notify any time the event with the given name is triggered

broadcast

public final <S,D> void broadcast(String name,
                                  S source,
                                  D data)
                     throws Exception
This method is used to broadcast an event. This method should: 1. Check if there is a list of listener that listen to the event name. 2. If there is a list of listener, create the event object with the given name , source and data 3. For each listener in the listener list, invoke the method onEvent(Event)

Type Parameters:
S - The type of the source that broacast the event
D - The type of the data that the source object is working on
Parameters:
name - The name of the event
source - The source object instance
data - The data object instance
Throws:
Exception - if an exception occurs

broadcast

public final <T extends Event> void broadcast(T event)
                     throws Exception
This method is used when a developer want to implement his own event object and broadcast the event. The method should: 1. Check if there is a list of listener that listen to the event name. 2. If there is a list of the listener, ror each listener in the listener list, invoke the method onEvent(Event)

Type Parameters:
T - The type of the event object, the type of the event object has to be extended from the Event type
Parameters:
event - The event instance
Throws:
Exception

eXo Kernel :: Component :: Common Service 2.4.3-CLD

Copyright © 2013 eXo Platform SAS. All Rights Reserved.