freemarker.template

Interface TemplateMethodModel

All Superinterfaces:
TemplateModel
Known Subinterfaces:
TemplateMethodModelEx
Known Implementing Classes:
Execute, JythonHashModel, JythonModel, JythonNumberModel, JythonSequenceModel, MapModel, NodeListModel, NodeListModel, ObjectConstructor, ResourceBundleModel, RhinoFunctionModel, SimpleMapModel

public interface TemplateMethodModel
extends TemplateModel

Objects that act as methods in a template data model must implement this interface.

Implementions of TemplateMethodModel should be thread-safe.

Version:
$Id: TemplateMethodModel.java,v 1.11 2003/09/22 23:56:54 revusky Exp $

Fields inherited from interface freemarker.template.TemplateModel

NOTHING

Method Summary

Object
exec(List arguments)
Executes a method call.

Method Details

exec

public Object exec(List arguments)
            throws TemplateModelException
Executes a method call. All arguments passed to the method call are treated as TemplateScalarModels, and evaluated to Strings before being passed. If some of the passed arguments is not a scalar, an exception will occur and the method will not be called. If your method would like to act on actual data model objects instead of on their String representations, implement the TemplateMethodModelEx instead.
Parameters:
arguments - a List of String objects containing the values of the arguments passed to the method.
Returns:
the TemplateModel produced by the method, or null.