public class ScriptEngines extends Object implements AutoCloseable
ScriptEngine
objects for the server.Constructor and Description |
---|
ScriptEngines(Consumer<ScriptEngines> initializer)
Creates a new object.
|
Modifier and Type | Method and Description |
---|---|
void |
addImports(Set<String> imports)
Perform append to the existing import list for all
ScriptEngine instances that implement the
DependencyManager interface. |
void |
close()
Iterate through all the
ScriptEngine implementations and if they implement AutoCloseable
then call the AutoCloseable.close() method. |
CompiledScript |
compile(Reader script,
String language)
Compiles a script without executing it.
|
CompiledScript |
compile(String script,
String language)
Compiles a script without executing it.
|
Map<String,List<Map>> |
dependencies()
List dependencies for those
ScriptEngine objects that implement the DependencyManager interface. |
Traversal.Admin |
eval(Bytecode bytecode,
Bindings bindings,
String language) |
Object |
eval(Reader reader,
Bindings bindings,
String language)
Evaluate a script with
Bindings for a particular language. |
Object |
eval(String script,
Bindings bindings,
String language)
Evaluate a script with
Bindings for a particular language. |
Map<String,List<Map>> |
imports()
List the imports for those
ScriptEngine objects that implement the DependencyManager interface. |
void |
loadPlugins(List<GremlinPlugin> plugins)
For each
DependencyManager try to load the specified plugins. |
void |
reload(String language,
Set<String> imports,
Set<String> staticImports,
Map<String,Object> config)
Reload a
ScriptEngine with fresh imports. |
void |
reset()
Resets the ScriptEngines and re-initializes them.
|
List<GremlinPlugin> |
use(String group,
String artifact,
String version)
Pull in dependencies given some Maven coordinates.
|
public ScriptEngines(Consumer<ScriptEngines> initializer)
initializer
- allows for external initialization of the newly created ScriptEngines
objectpublic Traversal.Admin eval(Bytecode bytecode, Bindings bindings, String language) throws ScriptException
ScriptException
public Object eval(String script, Bindings bindings, String language) throws ScriptException
Bindings
for a particular language.ScriptException
public Object eval(Reader reader, Bindings bindings, String language) throws ScriptException
Bindings
for a particular language.ScriptException
public CompiledScript compile(String script, String language) throws ScriptException
UnsupportedOperationException
- if the ScriptEngine
implementation does not implement
the Compilable
interface.ScriptException
public CompiledScript compile(Reader script, String language) throws ScriptException
UnsupportedOperationException
- if the ScriptEngine
implementation does not implement
the Compilable
interface.ScriptException
public void reload(String language, Set<String> imports, Set<String> staticImports, Map<String,Object> config)
ScriptEngine
with fresh imports. Waits for any existing script evaluations to complete but
then blocks other operations until complete.public void addImports(Set<String> imports)
ScriptEngine
instances that implement the
DependencyManager
interface. Waits for any existing script evaluations to complete but
then blocks other operations until complete.public List<GremlinPlugin> use(String group, String artifact, String version)
ScriptEngine
and determine if it
implements DependencyManager
. For those that do call the @{link DependencyManager#use} method to fire
it up. Waits for any existing script evaluations to complete but then blocks other operations until complete.public void loadPlugins(List<GremlinPlugin> plugins)
DependencyManager
try to load the specified plugins.public void close() throws Exception
ScriptEngine
implementations and if they implement AutoCloseable
then call the AutoCloseable.close()
method. After that is complete, the script engine cache will be
cleared.close
in interface AutoCloseable
Exception
public void reset()
public Map<String,List<Map>> dependencies()
ScriptEngine
objects that implement the DependencyManager
interface.public Map<String,List<Map>> imports()
ScriptEngine
objects that implement the DependencyManager
interface.Copyright © 2013–2016 Apache Software Foundation. All rights reserved.