@Beta @NotThreadSafe public class ListenerTracker extends Object
Usage Example:
private ListenerTracker listeners;
@Activate
protected void activate() {
listeners = new ListenerTracker();
listeners.addListener(mastershipService, new InternalMastershipListener())
.addListener(deviceService, new InternalDeviceListener())
.addListener(linkService, new InternalLinkListener())
.addListener(topologyService, new InternalTopologyListener())
.addListener(hostService, new InternalHostListener());
}
@Deactivate
protected void deactivate() {
listeners.removeListeners();
}
| Constructor and Description |
|---|
ListenerTracker() |
| Modifier and Type | Method and Description |
|---|---|
<E extends Event<?,?>,L extends EventListener<E>> |
addListener(ListenerService<E,L> service,
L listener)
Adds
EventListener to specified ListenerService. |
void |
removeListeners()
Removes all listeners in reverse order they have been registered.
|
public <E extends Event<?,?>,L extends EventListener<E>> ListenerTracker addListener(ListenerService<E,L> service, L listener)
EventListener to specified ListenerService.E - eventL - listenerservice - ListenerServicelistener - EventListenerpublic void removeListeners()