Class EventListenersContainer
- java.lang.Object
-
- org.htmlunit.javascript.host.event.EventListenersContainer
-
- All Implemented Interfaces:
java.io.Serializable
public class EventListenersContainer extends java.lang.Object implements java.io.SerializableContainer for event listener.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classEventListenersContainer.TypeContainer
-
Field Summary
Fields Modifier and Type Field Description private EventTargetjsNode_private static org.apache.commons.logging.LogLOGprivate java.util.concurrent.ConcurrentMap<java.lang.String,EventListenersContainer.TypeContainer>typeContainers_
-
Constructor Summary
Constructors Constructor Description EventListenersContainer(EventTarget jsNode)The constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddEventListener(java.lang.String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)Adds an event listener.voidexecuteAtTargetListeners(Event event, java.lang.Object[] args)Executes listeners for events targeting the node.voidexecuteBubblingListeners(Event event, java.lang.Object[] args)Executes bubbling listeners.voidexecuteCapturingListeners(Event event, java.lang.Object[] args)Executes capturing listeners.private voidexecuteEventListeners(int eventPhase, Event event, java.lang.Object[] args)org.htmlunit.corejs.javascript.FunctiongetEventHandler(java.lang.String eventType)Returns an event handler.java.util.List<org.htmlunit.corejs.javascript.Scriptable>getListeners(java.lang.String eventType, boolean useCapture)Returns the relevant listeners.private EventListenersContainer.TypeContainergetTypeContainer(java.lang.String type)(package private) booleanhasEventListeners(java.lang.String eventType)Returnstrueif there are any event listeners for the specified event.(package private) voidremoveEventListener(java.lang.String eventType, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)Removes event listener.voidsetEventHandler(java.lang.String eventType, java.lang.Object value)Sets the handler property (with a handler or something else).java.lang.StringtoString()
-
-
-
Field Detail
-
LOG
private static final org.apache.commons.logging.Log LOG
-
typeContainers_
private final java.util.concurrent.ConcurrentMap<java.lang.String,EventListenersContainer.TypeContainer> typeContainers_
-
jsNode_
private final EventTarget jsNode_
-
-
Constructor Detail
-
EventListenersContainer
public EventListenersContainer(EventTarget jsNode)
The constructor.- Parameters:
jsNode- the node.
-
-
Method Detail
-
addEventListener
public boolean addEventListener(java.lang.String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)Adds an event listener.- Parameters:
type- the event type to listen for (like "load")listener- the event listeneruseCapture- Iftrue, indicates that the user wishes to initiate capture (not yet implemented)- Returns:
trueif the listener has been added
-
getTypeContainer
private EventListenersContainer.TypeContainer getTypeContainer(java.lang.String type)
-
getListeners
public java.util.List<org.htmlunit.corejs.javascript.Scriptable> getListeners(java.lang.String eventType, boolean useCapture)Returns the relevant listeners.- Parameters:
eventType- the event typeuseCapture- whether to use capture of not- Returns:
- the listeners list (empty list when empty)
-
removeEventListener
void removeEventListener(java.lang.String eventType, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)Removes event listener.- Parameters:
eventType- the typelistener- the listeneruseCapture- to use capture or not
-
setEventHandler
public void setEventHandler(java.lang.String eventType, java.lang.Object value)Sets the handler property (with a handler or something else).- Parameters:
eventType- the event type (like "click")value- the new property
-
executeEventListeners
private void executeEventListeners(int eventPhase, Event event, java.lang.Object[] args)
-
executeBubblingListeners
public void executeBubblingListeners(Event event, java.lang.Object[] args)
Executes bubbling listeners.- Parameters:
event- the eventargs- arguments
-
executeCapturingListeners
public void executeCapturingListeners(Event event, java.lang.Object[] args)
Executes capturing listeners.- Parameters:
event- the eventargs- the arguments
-
executeAtTargetListeners
public void executeAtTargetListeners(Event event, java.lang.Object[] args)
Executes listeners for events targeting the node. (non-propagation phase)- Parameters:
event- the eventargs- the arguments
-
getEventHandler
public org.htmlunit.corejs.javascript.Function getEventHandler(java.lang.String eventType)
Returns an event handler.- Parameters:
eventType- the event name (e.g. "click")- Returns:
- the handler function,
nullif the property is null or not a function
-
hasEventListeners
boolean hasEventListeners(java.lang.String eventType)
Returnstrueif there are any event listeners for the specified event.- Parameters:
eventType- the event type (e.g. "click")- Returns:
trueif there are any event listeners for the specified event,falseotherwise
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-