public interface TemplateMethodModelEx extends TemplateMethodModel
BeansWrapper
, but you can implement this interface to create
top-level functions too. They are "extended" compared to the deprecated TemplateMethodModel
, which could only
accept string parameters.
In templates they are used like myMethod(1, "foo")
or myJavaObject.myJavaMethod(1, "foo")
.
NOTHING
Modifier and Type | Method and Description |
---|---|
java.lang.Object |
exec(java.util.List arguments)
Executes the method call.
|
java.lang.Object exec(java.util.List arguments) throws TemplateModelException
exec
in interface TemplateMethodModel
arguments
- a List
of TemplateModel
-s,
containing the arguments passed to the method. If the implementation absolutely wants
to operate on POJOs, it can use the static utility methods in the DeepUnwrap
class to easily obtain them. However, unwrapping is not always possible (or not perfectly), and isn't always
efficient, so it's recommended to use the original TemplateModel
value as much as possible.null
. If the returned value
does not implement TemplateModel
, it will be automatically
wrapped using the environment's
object wrapper
.TemplateModelException