Package org.apache.tapestry.listener

Support classes that allows an object to expose listener methods instead of listener properties.

See:
          Description

Interface Summary
ListenerInvoker Pipeline service interface for the tapestry.listener.ListenerInvoker pipeline service.
ListenerInvokerFilter Filter interface used with ListenerInvoker.
ListenerMap  
ListenerMapSource A service which provides access to ListenerMap  objects.
ListenerMethodInvoker An object, used by a ListenerMap, to match requests (possibly with service parameters) to methods (possibly with arguments).
 

Class Summary
ListenerInvokerTerminator Terminator implementation for the tapestry.listener.InvokeListener pipeline; this is what finally turns around and invokes IActionListener.actionTriggered(IComponent, IRequestCycle).
ListenerMapImpl  
ListenerMapPropertyAccessor Exposes IActionListener listeners provided by the ListenerMap as read-only properties of the map.
ListenerMapSourceImpl  
ListenerMethodInvokerImpl Logic for mapping a listener method name to an actual method invocation; this may require a little searching to find the correct version of the method, based on the number of parameters to the method (there's a lot of flexibility in terms of what methods may be considered a listener method).
SyntheticListener Adapter class that combines a target object (typically, a component) with a ListenerMethodInvoker.
 

Package org.apache.tapestry.listener Description

Support classes that allows an object to expose listener methods instead of listener properties.

Normally, a listener property must be an object that implement IActionListener. This can be cumbersome, in practice, as it typically involves creating an anonymous inner class.

Using this mechanism, classes can instead implement listener methods. A listener method takes the form:

public void method-name(IRequestCycle cycle) 
throws org.apache.tapestry.ApplicationRuntimeException

The throws clause is optional, but may not throw any additional exceptions.

Tapestry will create an appropriate listener object that will invoke the corresponding method.

The methods can be accessed using the property path "listeners.method-name"

Since:
1.0.2
Author:
Howard Lewis Ship hlship@apache.org
See Also:
ListenerMap, AbstractComponent.getListeners(), AbstractEngine.getListeners()