net.ranides.assira.events
Interface EventRouter

All Superinterfaces:
EventListener<Event>
All Known Subinterfaces:
Configuration, Observable
All Known Implementing Classes:
AbstractConfiguration, EventRouterDispatcher, EventRouterThread, JSONConfiguration, NamedEventListener, NamedEventRouter, XMLConfiguration

public interface EventRouter
extends EventListener<Event>

Klasa EventRouter propaguje zasygnalizowane zdarzenia do odbiorców. Każdy router potrafi nie tylko rozsyłać zdarzenia, ale również odbierać - implementuje interfejs EventListener<Event> i może być rejestrowany jako obserwator. Każde zdarzenie można skierować do routera na dwa sposoby:

Author:
ranides

Method Summary
<T extends Event>
void
addEventListener(Class<T> event, EventListener<? super T> listener)
          Rejestruje obserwatora, który otrzyma wszystkie zdarzenia o podanym typie.
 void dispose()
          Kończy działanie routera i zwalnia wszystkie zasoby.
 Collection<EventBinding<?>> getEventListeners()
           
 void removeAllEventListeners()
          Usuwa wszystkie zarejestrowane obserwatory.
<T extends Event>
void
removeEventListener(Class<T> event, EventListener<? super T> listener)
          Usuwa obserwatora, którego wcześniej zarejestrowano dla zdarzeń o podanym typie.
 boolean signalEvent(Event event)
          Sygnalizuje podane zdarzenie rozsyłając komunikat do wszystkich obserwatorów.
 
Methods inherited from interface net.ranides.assira.events.EventListener
handleEvent
 

Method Detail

addEventListener

<T extends Event> void addEventListener(Class<T> event,
                                        EventListener<? super T> listener)
Rejestruje obserwatora, który otrzyma wszystkie zdarzenia o podanym typie.
thread-safe method

Type Parameters:
T -
Parameters:
event -
listener -

removeEventListener

<T extends Event> void removeEventListener(Class<T> event,
                                           EventListener<? super T> listener)
Usuwa obserwatora, którego wcześniej zarejestrowano dla zdarzeń o podanym typie. Jeśli zajestrowano go również dla zdarzeń o innych typach - zostają one nadal. Jeśli zarejestrowano go wielokrotnie - musi zostać usunięty również wielokrotnie.
thread-safe method

Type Parameters:
T -
Parameters:
event -
listener -

removeAllEventListeners

void removeAllEventListeners()
Usuwa wszystkie zarejestrowane obserwatory.
thread-safe method


getEventListeners

Collection<EventBinding<?>> getEventListeners()

signalEvent

boolean signalEvent(Event event)
Sygnalizuje podane zdarzenie rozsyłając komunikat do wszystkich obserwatorów. Jeśli rozesłanie komunikatu nie jest możliwe, zwraca false.

Parameters:
event -
Returns:
true - jeśli zdarzenie może być przekazane odbiorcom.

dispose

void dispose()
Kończy działanie routera i zwalnia wszystkie zasoby.
thread-safe method



Copyright © 2013. All Rights Reserved.