net.infonode.util.signal
Class Signal

java.lang.Object
  extended by net.infonode.util.signal.Signal

public class Signal
extends java.lang.Object

Version:
$Revision: 1.3 $
Author:
$Author: jesper $

Nested Class Summary
private  class Signal.SignalHookImpl
           
private static class Signal.WeakListener
           
 
Field Summary
private  CopyOnWriteArrayList listeners
           
private static java.lang.ref.ReferenceQueue refQueue
           
private  boolean reverseNotifyOrder
           
private  Signal.SignalHookImpl signalHook
           
 
Constructor Summary
Signal()
           
Signal(boolean reverseNotifyOrder)
           
 
Method Summary
 void addListener(SignalListener listener)
           
 void emit(java.lang.Object object)
           
protected  void firstListenerAdded()
           
 SignalHook getHook()
           
 boolean hasListeners()
           
 java.util.Iterator iterator()
           
protected  void lastListenerRemoved()
           
protected  void removeListener(int index)
           
 boolean removeListener(SignalListener listener)
           
 void removeListeners(java.util.Collection toRemove)
           
protected  void removeWeakListener(Signal.WeakListener listener)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

refQueue

private static java.lang.ref.ReferenceQueue refQueue

reverseNotifyOrder

private boolean reverseNotifyOrder

listeners

private CopyOnWriteArrayList listeners

signalHook

private Signal.SignalHookImpl signalHook
Constructor Detail

Signal

public Signal()

Signal

public Signal(boolean reverseNotifyOrder)
Method Detail

firstListenerAdded

protected void firstListenerAdded()

lastListenerRemoved

protected void lastListenerRemoved()

addListener

public void addListener(SignalListener listener)

removeListener

public boolean removeListener(SignalListener listener)

removeWeakListener

protected void removeWeakListener(Signal.WeakListener listener)

removeListener

protected void removeListener(int index)

hasListeners

public boolean hasListeners()

iterator

public java.util.Iterator iterator()

getHook

public SignalHook getHook()

emit

public void emit(java.lang.Object object)

removeListeners

public void removeListeners(java.util.Collection toRemove)