org.camunda.bpm.engine.impl.scripting
Class ExecutableScript

java.lang.Object
  extended by org.camunda.bpm.engine.impl.scripting.ExecutableScript
Direct Known Subclasses:
CompiledExecutableScript, DynamicExecutableScript

public abstract class ExecutableScript
extends Object

Represents an executable script.

Author:
Daniel Meyer

Field Summary
protected  String language
          The language of the script.
 
Constructor Summary
protected ExecutableScript(String language)
           
 
Method Summary
protected abstract  Object evaluate(ScriptEngine scriptEngine, VariableScope variableScope, Bindings bindings)
           
 Object execute(ScriptEngine scriptEngine, VariableScope variableScope, Bindings bindings)
          Evaluates the script using the provided engine and bindings
 String getLanguage()
          The language in which the script is written.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

language

protected final String language
The language of the script. Used to resolve the ScriptEngine.

Constructor Detail

ExecutableScript

protected ExecutableScript(String language)
Method Detail

getLanguage

public String getLanguage()
The language in which the script is written.

Returns:
the language

execute

public Object execute(ScriptEngine scriptEngine,
                      VariableScope variableScope,
                      Bindings bindings)

Evaluates the script using the provided engine and bindings

Parameters:
scriptEngine - the script engine to use for evaluating the script.
variableScope - the variable scope of the execution
bindings - the bindings to use for evaluating the script.
Returns:
the result of the script evaluation
Throws:
ProcessEngineException - in case the script cannot be evaluated.

evaluate

protected abstract Object evaluate(ScriptEngine scriptEngine,
                                   VariableScope variableScope,
                                   Bindings bindings)


Copyright © 2016 camunda services GmbH. All rights reserved.