public interface JexlScript
A script is some valid JEXL syntax to be executed with a given set of JexlContext variables.
A script is a group of statements, separated by semicolons.
The statements can be blocks (curly braces containing code),
Control statements such as if and while
as well as expressions and assignment statements.
| Modifier and Type | Method and Description |
|---|---|
Callable<Object> |
callable(JexlContext context)
Creates a Callable from this script.
|
Callable<Object> |
callable(JexlContext context,
Object... args)
Creates a Callable from this script.
|
JexlScript |
curry(Object... args)
Curries this script, returning a script with bound arguments.
|
Object |
execute(JexlContext context)
Executes the script with the variables contained in the
supplied
JexlContext. |
Object |
execute(JexlContext context,
Object... args)
Executes the script with the variables contained in the
supplied
JexlContext and a set of arguments corresponding to the
parameters used during parsing. |
String[] |
getLocalVariables()
Gets this script local variables.
|
String[] |
getParameters()
Gets this script parameters.
|
String |
getParsedText()
Recreates the source text of this expression from the internal syntactic tree.
|
String |
getParsedText(int indent)
Recreates the source text of this expression from the internal syntactic tree.
|
Map<String,Object> |
getPragmas()
Gets this script pragmas.
|
String |
getSourceText()
Returns the source text of this expression.
|
Set<List<String>> |
getVariables()
Gets this script variables.
|
String getSourceText()
String getParsedText()
String getParsedText(int indent)
indent - the number of spaces for indentation, 0 meaning no indentationObject execute(JexlContext context)
JexlContext.context - A JexlContext containing variables.Object execute(JexlContext context, Object... args)
JexlContext and a set of arguments corresponding to the
parameters used during parsing.context - A JexlContext containing variables.args - the argumentsString[] getParameters()
String[] getLocalVariables()
Set<List<String>> getVariables()
Note that since variables can be in an ant-ish form (ie foo.bar.quux), each variable is returned as a list of strings where each entry is a fragment of the variable ({"foo", "bar", "quux"} in the example.
Map<String,Object> getPragmas()
Callable<Object> callable(JexlContext context)
This allows to submit it to an executor pool and provides support for asynchronous calls.
The interpreter will handle interruption/cancellation gracefully if needed.
context - the contextCallable<Object> callable(JexlContext context, Object... args)
This allows to submit it to an executor pool and provides support for asynchronous calls.
The interpreter will handle interruption/cancellation gracefully if needed.
context - the contextargs - the script argumentsJexlScript curry(Object... args)
If this script does not declare parameters or if all of them are already bound, no error is generated and this script is returned.
args - the arguments to bindCopyright © 2001–2015 The Apache Software Foundation. All rights reserved.