freemarker.template
Interface TemplateMethodModelEx

All Superinterfaces:
TemplateMethodModel, TemplateModel
All Known Implementing Classes:
JythonHashModel, JythonModel, JythonNumberModel, JythonSequenceModel, MapModel, ObjectConstructor, ResourceBundleModel, RhinoFunctionModel, SimpleMapModel, SimpleMethodModel

public interface TemplateMethodModelEx
extends TemplateMethodModel

A subinterface of TemplateMethodModel that acts on models, rather than on strings. TemplateMethodModel interface will receive string representations of its argument expressions, while this interface receives the models themselves. The interface has no new methods. Instead, by implementing this interface the class declares that it wishes to receive actual TemplateModel instances in its arguments list when invoked instead of their string representations. Further, if the implementation wishes to operate on POJOs that might be underlying the models, it can use the static utility methods in the DeepUnwrap class to easily obtain them.

Version:
$Id: TemplateMethodModelEx.java,v 1.8 2003/01/12 23:40:21 revusky Exp $
Author:
Attila Szegedi, szegedia at users dot sourceforge dot net

Field Summary
 
Fields inherited from interface freemarker.template.TemplateModel
NOTHING
 
Method Summary
 java.lang.Object exec(java.util.List arguments)
          Executes a method call.
 

Method Detail

exec

java.lang.Object exec(java.util.List arguments)
                      throws TemplateModelException
Executes a method call.

Specified by:
exec in interface TemplateMethodModel
Parameters:
arguments - a List of TemplateModel objects containing the values of the arguments passed to the method. If the implementation wishes to operate on POJOs that might be underlying the models, it can use the static utility methods in the DeepUnwrap class to easily obtain them.
Returns:
the return value of the method, or null. If the returned value does not implement TemplateModel, it will be automatically wrapped using the environment object wrapper.
Throws:
TemplateModelException