org.wings.session
Class LowLevelEventDispatcher

java.lang.Object
  extended by org.wings.session.LowLevelEventDispatcher
All Implemented Interfaces:
Serializable

public final class LowLevelEventDispatcher
extends Object
implements Serializable

Registers session component instants which want to receive low level events. The dispatcher holds a list of all known low level event listeners and is responsible to dispatch the according part of an original HTTP request to the LowLevelEventListener.processLowLevelEvent(String, String[]) method of the registered LowLevelEventListeners.

Author:
Armin Haaf
See Also:
Serialized Form

Field Summary
protected  boolean namedEvents
           
 
Constructor Summary
LowLevelEventDispatcher()
           
 
Method Summary
 void addLowLevelEventListener(LowLevelEventListener gl, String eventId)
           
 boolean dispatch(String name, String[] values)
          dispatch the events, encoded as [name/(multiple)values] in the HTTP request.
 List getLowLevelEventListener(String eventId)
          Returns list of registered low level event listener for the given event id.
 void invokeLater(Runnable runnable)
           
protected  boolean isEventEpochValid(LowLevelEventListener gl)
           
 void register(LowLevelEventListener gl)
          Registers a low level event listeners (for HTTP request processing).
 void removeLowLevelEventListener(LowLevelEventListener gl, String eventId)
           
protected  void setEventEpoch(String epoch)
           
 void setNamedEvents(boolean registerListenerAlsoUnderName)
          Register low level event listeners additionally by their component name as event id.
 void unregister(LowLevelEventListener gl)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

namedEvents

protected boolean namedEvents
Constructor Detail

LowLevelEventDispatcher

public LowLevelEventDispatcher()
Method Detail

addLowLevelEventListener

public final void addLowLevelEventListener(LowLevelEventListener gl,
                                           String eventId)

removeLowLevelEventListener

public final void removeLowLevelEventListener(LowLevelEventListener gl,
                                              String eventId)

getLowLevelEventListener

public final List getLowLevelEventListener(String eventId)
Returns list of registered low level event listener for the given event id.

Parameters:
eventId - The id (HTTP request parameter name) under which the listeners are registered.
Returns:
A list of registered low level event listener for the given event id.

setNamedEvents

public final void setNamedEvents(boolean registerListenerAlsoUnderName)
Register low level event listeners additionally by their component name as event id. Used for purposes where you use fixed ids vs. dnymaically applied ids.

Parameters:
registerListenerAlsoUnderName - if true then components will also receieve HTTP values under their SComponent.getName() in addition to LowLevelEventListener.getLowLevelEventId()

register

public void register(LowLevelEventListener gl)
Registers a low level event listeners (for HTTP request processing).

The NamePrefix of the listeners id is used as HTTP requestr parameter name. .

Parameters:
gl - listeners

unregister

public void unregister(LowLevelEventListener gl)

dispatch

public boolean dispatch(String name,
                        String[] values)
dispatch the events, encoded as [name/(multiple)values] in the HTTP request. the part in front of the UID_DIVIDER ('-') is removed, first. if the remainder contains an underscore ('_'), only the portion afore will be used to identify the target component.

Parameters:
name -
values -
Returns:
if the event has been dispatched

isEventEpochValid

protected boolean isEventEpochValid(LowLevelEventListener gl)

invokeLater

public void invokeLater(Runnable runnable)

setEventEpoch

protected void setEventEpoch(String epoch)


wingS Swings ;-)