Class DefaultScriptEngineResolver
- java.lang.Object
-
- org.camunda.bpm.engine.impl.scripting.engine.DefaultScriptEngineResolver
-
- All Implemented Interfaces:
ScriptEngineResolver
public class DefaultScriptEngineResolver extends Object implements ScriptEngineResolver
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<String,ScriptEngine>
cachedEngines
protected ScriptEngineManager
scriptEngineManager
-
Constructor Summary
Constructors Constructor Description DefaultScriptEngineResolver(ScriptEngineManager scriptEngineManager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addScriptEngineFactory(ScriptEngineFactory scriptEngineFactory)
protected void
configureGraalJsScriptEngine(ScriptEngine scriptEngine)
Allows providing custom configuration for the Graal JS script engine.protected void
configureGroovyScriptEngine(ScriptEngine scriptEngine)
Allows providing custom configuration for the groovy script engine.protected void
configureScriptEngines(String language, ScriptEngine scriptEngine)
protected ScriptEngine
getJavaScriptScriptEngine(String language)
protected ScriptEngine
getScriptEngine(String language)
ScriptEngine
getScriptEngine(String language, boolean resolveFromCache)
Returns a cached script engine or creates a new script engine if no such engine is currently cached.ScriptEngineManager
getScriptEngineManager()
protected boolean
isCachable(ScriptEngine scriptEngine)
Allows checking whether the script engine can be cached.
-
-
-
Field Detail
-
scriptEngineManager
protected final ScriptEngineManager scriptEngineManager
-
cachedEngines
protected Map<String,ScriptEngine> cachedEngines
-
-
Constructor Detail
-
DefaultScriptEngineResolver
public DefaultScriptEngineResolver(ScriptEngineManager scriptEngineManager)
-
-
Method Detail
-
addScriptEngineFactory
public void addScriptEngineFactory(ScriptEngineFactory scriptEngineFactory)
- Specified by:
addScriptEngineFactory
in interfaceScriptEngineResolver
-
getScriptEngineManager
public ScriptEngineManager getScriptEngineManager()
- Specified by:
getScriptEngineManager
in interfaceScriptEngineResolver
-
getScriptEngine
public ScriptEngine getScriptEngine(String language, boolean resolveFromCache)
Returns a cached script engine or creates a new script engine if no such engine is currently cached.- Specified by:
getScriptEngine
in interfaceScriptEngineResolver
- Parameters:
language
- the language (such as 'groovy' for the script engine)- Returns:
- the cached engine or null if no script engine can be created for the given language
-
getScriptEngine
protected ScriptEngine getScriptEngine(String language)
-
getJavaScriptScriptEngine
protected ScriptEngine getJavaScriptScriptEngine(String language)
-
isCachable
protected boolean isCachable(ScriptEngine scriptEngine)
Allows checking whether the script engine can be cached.- Parameters:
scriptEngine
- the script engine to check.- Returns:
- true if the script engine may be cached.
-
configureScriptEngines
protected void configureScriptEngines(String language, ScriptEngine scriptEngine)
-
configureGroovyScriptEngine
protected void configureGroovyScriptEngine(ScriptEngine scriptEngine)
Allows providing custom configuration for the groovy script engine.- Parameters:
scriptEngine
- the groovy script engine to configure.
-
configureGraalJsScriptEngine
protected void configureGraalJsScriptEngine(ScriptEngine scriptEngine)
Allows providing custom configuration for the Graal JS script engine.- Parameters:
scriptEngine
- the Graal JS script engine to configure.
-
-