Class EventSignal
- java.lang.Object
-
- eu.webtoolkit.jwt.AbstractSignal
-
- eu.webtoolkit.jwt.AbstractEventSignal
-
- eu.webtoolkit.jwt.EventSignal
-
public class EventSignal extends AbstractEventSignal
An signal which relays a browser event. This event signal does not pass any event details.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class eu.webtoolkit.jwt.AbstractEventSignal
AbstractEventSignal.AutoLearnListener, AbstractEventSignal.JavaScriptListener, AbstractEventSignal.LearningListener, AbstractEventSignal.PreLearnListener
-
Nested classes/interfaces inherited from class eu.webtoolkit.jwt.AbstractSignal
AbstractSignal.Connection
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddListener(JSlot slot)Adds a JavaScript event listener.voidaddListener(WObject receiver, AbstractEventSignal.LearningListener listener)Adds a learning listener to this signal.AbstractSignal.ConnectionaddListener(WObject listenerOwner, Signal.Listener listener)Adds a listener for this signal.protected intgetArgumentCount()Returns the number of parameters (excluding an 'event').protected intgetListenerCount()Returns the number of connected listeners.voidremoveListener(Signal.Listener listener)Removes a listener.voidtrigger()-
Methods inherited from class eu.webtoolkit.jwt.AbstractEventSignal
addListener, addListener, addListener, addListener, createUserEventCall, disconnect, isCanAutoLearn, isConnected, isDefaultActionPrevented, isPropagationPrevented, preventDefaultAction, preventDefaultAction, preventPropagation, preventPropagation, removeListener, removeListener
-
Methods inherited from class eu.webtoolkit.jwt.AbstractSignal
getListeners, isBlocked, setBlocked
-
-
-
-
Method Detail
-
addListener
public AbstractSignal.Connection addListener(WObject listenerOwner, Signal.Listener listener)
Description copied from class:AbstractSignalAdds a listener for this signal.Each listener will be notified when the signal is triggered.
An owner object may be passed when the listener is implemented using an (anonymous) inner class. In that case the owner object should be the enclosing object of the listener object, and this is used to bind the lifetime of the listener. To avoid the owner object from not being garbage collected when it is no longer used, only the owner object will add a reference to the listener, while the signal will use a weak reference.
This avoids the most common reason for memory leaks in Java implementations of the Observer pattern: the owner object will not get garbage collected because of the (anonymous) listener object having a reference to it, even if the receiver object is no longer referenced from anywhere. When the owner object is not
null, the listener is stored using a strong reference in the owner object, and using a weak reference in the signal.- Specified by:
addListenerin classAbstractSignal- Parameters:
listenerOwner- if notnull, the enclosing object for a listener implemented using an inner classlistener- the listener- Returns:
- a connection object that may be used to control the connection
-
getListenerCount
protected int getListenerCount()
Description copied from class:AbstractSignalReturns the number of connected listeners.- Overrides:
getListenerCountin classAbstractEventSignal- Returns:
- the number of connected listeners.
-
removeListener
public void removeListener(Signal.Listener listener)
Description copied from class:AbstractSignalRemoves a listener.- Specified by:
removeListenerin classAbstractSignal- Parameters:
listener- a listener that was previously added.
-
trigger
public void trigger()
-
addListener
public void addListener(JSlot slot)
Description copied from class:AbstractEventSignalAdds a JavaScript event listener.- Overrides:
addListenerin classAbstractEventSignal- Parameters:
slot- the JavaScript event listener
-
addListener
public void addListener(WObject receiver, AbstractEventSignal.LearningListener listener)
Description copied from class:AbstractEventSignalAdds a learning listener to this signal.An owner object may be passed when the listener is implemented using an anonymous inner class. In that case the owner object should be the enclosing object of the listener object, and this is used to bind the lifetime of the listener: when the owner object is garbage collected, the listener will be freed as well. This avoids the most common reason for memory leaks in Java implementations of the Observer pattern: the owner object will not get garbage collected because of the (anonymous) listener object having a reference to it, even if the receiver object is no longer referenced from anywhere. When the owner object is not
null, the listener is stored using a strong reference in the owner object, and using a weak reference in the signal. Note: The receiver is currently not yet used.- Overrides:
addListenerin classAbstractEventSignal- Parameters:
receiver- if notnull, the enclosing object for an anonymous listenerlistener- the listener
-
getArgumentCount
protected int getArgumentCount()
Description copied from class:AbstractSignalReturns the number of parameters (excluding an 'event').- Specified by:
getArgumentCountin classAbstractSignal
-
-