Class AbstractScriptEvaluator
- java.lang.Object
-
- org.flowable.common.engine.impl.scripting.AbstractScriptEvaluator
-
public abstract class AbstractScriptEvaluator extends Object
Base class simplifying binding and evaluation of scriptable elements.- Author:
- Rich Kroll, Joram Barrez, Arthur Hupka-Merle
-
-
Field Summary
Fields Modifier and Type Field Description protected ExpressionlanguageThe language of the script e.g.protected ExpressionresultVariableThe name of the result variable to store the result of the script evaluation in the variableScope.protected StringscriptThe actual payload of the script in the given language.
-
Constructor Summary
Constructors Constructor Description AbstractScriptEvaluator()AbstractScriptEvaluator(Expression language, String script)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description ScriptEngineRequest.BuildercreateScriptRequest(VariableContainer variableContainer)Validates language and script and creates a pre-populatedScriptEngineRequest.Builderwhich can be evaluated usingevaluateScriptRequest(ScriptEngineRequest.Builder).protected ObjectevaluateScript(ScriptingEngines scriptingEngines, ScriptEngineRequest request)protected ObjectevaluateScriptRequest(ScriptEngineRequest.Builder requestBuilder)StringgetScript()protected abstract ScriptingEnginesgetScriptingEngines()voidsetLanguage(Expression language)voidsetResultVariable(Expression resultVariable)voidsetScript(String script)voidsetScript(Expression script)Sets the script as Expression for backwards compatibility.protected voidvalidateParameters()
-
-
-
Field Detail
-
language
protected Expression language
The language of the script e.g. an Expression evaluating to javascript, juel, groovy, etc. Mandatory. Must not be or evaluate tonullto null.
-
script
protected String script
The actual payload of the script in the given language. Mandatory. Must not be or evaluate tonullto null.
-
resultVariable
protected Expression resultVariable
The name of the result variable to store the result of the script evaluation in the variableScope.
-
-
Constructor Detail
-
AbstractScriptEvaluator
public AbstractScriptEvaluator()
-
AbstractScriptEvaluator
public AbstractScriptEvaluator(Expression language, String script)
-
-
Method Detail
-
createScriptRequest
public ScriptEngineRequest.Builder createScriptRequest(VariableContainer variableContainer)
Validates language and script and creates a pre-populatedScriptEngineRequest.Builderwhich can be evaluated usingevaluateScriptRequest(ScriptEngineRequest.Builder).- Returns:
- the ScriptEngineRequest builder instance for further population
-
evaluateScriptRequest
protected Object evaluateScriptRequest(ScriptEngineRequest.Builder requestBuilder)
-
evaluateScript
protected Object evaluateScript(ScriptingEngines scriptingEngines, ScriptEngineRequest request)
-
validateParameters
protected void validateParameters()
-
getScriptingEngines
protected abstract ScriptingEngines getScriptingEngines()
-
setScript
public void setScript(String script)
-
setScript
public void setScript(Expression script)
Sets the script as Expression for backwards compatibility. Requires to for 'field' injection of scripts. Expression is not evaluated
-
getScript
public String getScript()
-
setLanguage
public void setLanguage(Expression language)
-
setResultVariable
public void setResultVariable(Expression resultVariable)
-
-