public interface Function<R>
Parameter array).
The goal of a Function object is to call its getFunctionValue(Parameters) method, which
executes it, given the specified parameters.Parameter,
Parameters| Modifier and Type | Method and Description |
|---|---|
Parameters |
createParameters()
Creates an empty 'Parameters' object for you, which you have to fill and feed back to getFunctionValue
|
String |
getDescription() |
R |
getFunctionValue(Parameters parameters)
Executes the defined function supplying the given arguments.
|
R |
getFunctionValueWithList(List<?> parameters)
Executes the defined function supplying the given List of arguments.
|
String |
getName()
A function must have a name.
|
Parameter<?>[] |
getParameterDefinition() |
ReturnType<R> |
getReturnType() |
void |
setDescription(String description)
For documentational purposes a function object needs a description too.
|
void |
setParameterDefinition(Parameter<?>[] params)
A function object is of no use, as long as it lacks a definition.
|
void |
setReturnType(ReturnType<R> type)
Sets the return type of the function's result value.
|
Parameters createParameters()
getFunctionValue(Parameters)R getFunctionValue(Parameters parameters)
parameters - The parameters for the function. To specify an empty parameter list use Parameters.VOID.
Implementors are encouraged to support null too.getReturnType()createParameters()R getFunctionValueWithList(List<?> parameters)
getFunctionValue(Parameters).parameters - The parameters for the function. To specify an empty parameter list use Parameters.VOID.getReturnType()void setDescription(String description)
String getDescription()
setDescription(String)String getName()
nullParameter<?>[] getParameterDefinition()
null if not set already.void setParameterDefinition(Parameter<?>[] params)
params - An array of Parameter objects.IllegalStateException - if there was already set a parameter definition for this function object.ReturnType<R> getReturnType()
null if unknown.void setReturnType(ReturnType<R> type)
type - A ReturnType object. For void functions that could be ReturnType.VOID.IllegalStateException - if there was already set a return type for this function object.MMBase 1.9-SNAPSHOT - ${javadoctimestamp}