org.apache.velocity.app.event

Class EventCartridge

public class EventCartridge extends Object implements ReferenceInsertionEventHandler, NullSetEventHandler, MethodExceptionEventHandler

'Package' of event handlers...

Version: $Id: EventCartridge.java,v 1.3.4.1 2004/03/03 23:22:53 geirm Exp $

Author: Geir Magnusson Jr. Jose Alberto Fernandez

Field Summary
MethodExceptionEventHandlermeeh
NullSetEventHandlernseh
ReferenceInsertionEventHandlerrieh
Method Summary
booleanaddEventHandler(EventHandler ev)
Adds an event handler(s) to the Cartridge.
booleanattachToContext(Context context)
Attached the EventCartridge to the context Final because not something one should mess with lightly :)
ObjectmethodException(Class claz, String method, Exception e)
Implementation of MethodExceptionEventHandler method methodException().
ObjectreferenceInsert(String reference, Object value)
Implementation of ReferenceInsertionEventHandler method referenceInsert().
booleanremoveEventHandler(EventHandler ev)
Removes an event handler(s) from the Cartridge.
booleanshouldLogOnNullSet(String lhs, String rhs)
Implementation of NullSetEventHandler method shouldLogOnNullSet().

Field Detail

meeh

private MethodExceptionEventHandler meeh

nseh

private NullSetEventHandler nseh

rieh

private ReferenceInsertionEventHandler rieh

Method Detail

addEventHandler

public boolean addEventHandler(EventHandler ev)
Adds an event handler(s) to the Cartridge. This method will find all possible event handler interfaces supported by the passed in object.

Parameters: ev object impementing a valid EventHandler-derived interface

Returns: true if a supported interface, false otherwise or if null

attachToContext

public final boolean attachToContext(Context context)
Attached the EventCartridge to the context Final because not something one should mess with lightly :)

Parameters: context context to attach to

Returns: true if successful, false otherwise

methodException

public Object methodException(Class claz, String method, Exception e)
Implementation of MethodExceptionEventHandler method methodException(). Called during Velocity merge if a reference is null

Parameters: claz Class that is causing the exception method method called that causes the exception e Exception thrown by the method

Returns: Object to return as method result

Throws: exception to be wrapped and propogated to app

referenceInsert

public Object referenceInsert(String reference, Object value)
Implementation of ReferenceInsertionEventHandler method referenceInsert(). Called during Velocity merge before a reference value will be inserted into the output stream.

Parameters: reference reference from template about to be inserted value value about to be inserted (after toString() )

Returns: Object on which toString() should be called for output.

removeEventHandler

public boolean removeEventHandler(EventHandler ev)
Removes an event handler(s) from the Cartridge. This method will find all possible event handler interfaces supported by the passed in object and remove them.

Parameters: ev object impementing a valid EventHandler-derived interface

Returns: true if a supported interface, false otherwise or if null

shouldLogOnNullSet

public boolean shouldLogOnNullSet(String lhs, String rhs)
Implementation of NullSetEventHandler method shouldLogOnNullSet(). Called during Velocity merge to determine if when a #set() results in a null assignment, a warning is logged.

Parameters: reference reference from template about to be inserted

Returns: true if to be logged, false otherwise

Copyright B) 2002 Apache Software Foundation. All Rights Reserved.