public interface ScriptEngine
ScriptEngine is the fundamental interface whose methods must be
fully functional in every implementation of this specification.
| Modifier and Type | Field and Description |
|---|---|
static String |
ARGV
Reserved key for a named value that passes
an array of positional arguments to a script.
|
static String |
ENGINE
Reserved key for a named value that is
the name of the
ScriptEngine implementation. |
static String |
ENGINE_VERSION
Reserved key for a named value that identifies
the version of the
ScriptEngine implementation. |
static String |
FILENAME
Reserved key for a named value that is
the name of the file being executed.
|
static String |
LANGUAGE
Reserved key for a named value that is
the full name of Scripting Language supported by the implementation.
|
static String |
LANGUAGE_VERSION
Reserved key for the named value that identifies
the version of the scripting language supported by the implementation.
|
static String |
NAME
Reserved key for a named value that identifies
the short name of the scripting language.
|
| Modifier and Type | Method and Description |
|---|---|
Bindings |
createBindings()
Returns an uninitialized
Bindings. |
Object |
eval(Reader reader)
Same as
eval(String) except that the source of the script is
provided as a Reader |
Object |
eval(Reader reader,
Bindings n)
Same as
eval(String, Bindings) except that the source of the script
is provided as a Reader. |
Object |
eval(Reader reader,
ScriptContext context)
Same as
eval(String, ScriptContext) where the source of the script
is read from a Reader. |
Object |
eval(String script)
Executes the specified script.
|
Object |
eval(String script,
Bindings n)
Executes the script using the
Bindings argument as the ENGINE_SCOPE
Bindings of the ScriptEngine during the script execution. |
Object |
eval(String script,
ScriptContext context)
Causes the immediate execution of the script whose source is the String
passed as the first argument.
|
Object |
get(String key)
Retrieves a value set in the state of this engine.
|
Bindings |
getBindings(int scope)
Returns a scope of named values.
|
ScriptContext |
getContext()
Returns the default
ScriptContext of the ScriptEngine whose Bindings, Reader
and Writers are used for script executions when no ScriptContext is specified. |
ScriptEngineFactory |
getFactory()
Returns a
ScriptEngineFactory for the class to which this ScriptEngine belongs. |
void |
put(String key,
Object value)
Sets a key/value pair in the state of the ScriptEngine that may either create
a Java Language Binding to be used in the execution of scripts or be used in some
other way, depending on whether the key is reserved.
|
void |
setBindings(Bindings bindings,
int scope)
Sets a scope of named values to be used by scripts.
|
void |
setContext(ScriptContext context)
Sets the default
ScriptContext of the ScriptEngine whose Bindings, Reader
and Writers are used for script executions when no ScriptContext is specified. |
static final String ARGV
static final String FILENAME
static final String ENGINE
ScriptEngine implementation.static final String ENGINE_VERSION
ScriptEngine implementation.static final String NAME
ScriptEngineManager to locate a ScriptEngine
with a given name in the getEngineByName method.static final String LANGUAGE
static final String LANGUAGE_VERSION
Object eval(String script, ScriptContext context) throws ScriptException
script - The script to be executed by the script engine.context - A ScriptContext exposing sets of attributes in
different scopes. The meanings of the scopes ScriptContext.GLOBAL_SCOPE,
and ScriptContext.ENGINE_SCOPE are defined in the specification.
ENGINE_SCOPE Bindings of the ScriptContext contains the
bindings of scripting variables to application objects to be used during this
script execution.ScriptException - if an error occurs in script. ScriptEngines should create and throw
ScriptException wrappers for checked Exceptions thrown by underlying scripting
implementations.NullPointerException - if either argument is null.Object eval(Reader reader, ScriptContext context) throws ScriptException
eval(String, ScriptContext) where the source of the script
is read from a Reader.reader - The source of the script to be executed by the script engine.context - The ScriptContext passed to the script engine.ScriptException - if an error occurs in script.NullPointerException - if either argument is null.Object eval(String script) throws ScriptException
ScriptContext for the ScriptEngine
is used.script - The script language source to be executed.ScriptException - if error occurs in script.NullPointerException - if the argument is null.Object eval(Reader reader) throws ScriptException
eval(String) except that the source of the script is
provided as a Readerreader - The source of the script.ScriptException - if an error occurs in script.NullPointerException - if the argument is null.Object eval(String script, Bindings n) throws ScriptException
Bindings argument as the ENGINE_SCOPE
Bindings of the ScriptEngine during the script execution. The
Reader, Writer and non-ENGINE_SCOPE Bindings of the
default ScriptContext are used. The ENGINE_SCOPE
Bindings of the ScriptEngine is not changed, and its
mappings are unaltered by the script execution.script - The source for the script.n - The Bindings of attributes to be used for script execution.ScriptException - if an error occurs in script.NullPointerException - if either argument is null.Object eval(Reader reader, Bindings n) throws ScriptException
eval(String, Bindings) except that the source of the script
is provided as a Reader.reader - The source of the script.n - The Bindings of attributes.ScriptException - if an error occurs.NullPointerException - if either argument is null.void put(String key, Object value)
getBindings(ScriptContext.ENGINE_SCOPE).put.key - The name of named value to addvalue - The value of named value to add.NullPointerException - if key is null.IllegalArgumentException - if key is empty.Object get(String key)
setValue or some other value in the state
of the ScriptEngine, depending on the implementation. Must have the same effect
as getBindings(ScriptContext.ENGINE_SCOPE).getkey - The key whose value is to be returnedNullPointerException - if key is null.IllegalArgumentException - if key is empty.Bindings getBindings(int scope)
ScriptContext.GLOBAL_SCOPE - The set of named values representing global
scope. If this ScriptEngine is created by a ScriptEngineManager,
then the manager sets global scope bindings. This may be null if no global
scope is associated with this ScriptEngineScriptContext.ENGINE_SCOPE - The set of named values representing the state of
this ScriptEngine. The values are generally visible in scripts using
the associated keys as variable names.ScriptContext of the ScriptEngine.
Bindings instances that are returned must be identical to those returned by the
getBindings method of ScriptContext called with corresponding arguments on
the default ScriptContext of the ScriptEngine.scope - Either ScriptContext.ENGINE_SCOPE or ScriptContext.GLOBAL_SCOPE
which specifies the Bindings to return. Implementations of ScriptContext
may define additional scopes. If the default ScriptContext of the ScriptEngine
defines additional scopes, any of them can be passed to get the corresponding Bindings.Bindings with the specified scope.IllegalArgumentException - if specified scope is invalidvoid setBindings(Bindings bindings, int scope)
ScriptContext.ENGINE_SCOPE - The specified Bindings replaces the
engine scope of the ScriptEngine.
ScriptContext.GLOBAL_SCOPE - The specified Bindings must be visible
as the GLOBAL_SCOPE.
ScriptContext of the ScriptEngine.
setBindings method of
ScriptContext with the corresponding value of scope on the default
ScriptContext of the ScriptEngine.bindings - The Bindings for the specified scope.scope - The specified scope. Either ScriptContext.ENGINE_SCOPE,
ScriptContext.GLOBAL_SCOPE, or any other valid value of scope.IllegalArgumentException - if the scope is invalidNullPointerException - if the bindings is null and the scope is
ScriptContext.ENGINE_SCOPEBindings createBindings()
Bindings.Bindings that can be used to replace the state of this ScriptEngine.ScriptContext getContext()
ScriptContext of the ScriptEngine whose Bindings, Reader
and Writers are used for script executions when no ScriptContext is specified.ScriptContext of the ScriptEngine.void setContext(ScriptContext context)
ScriptContext of the ScriptEngine whose Bindings, Reader
and Writers are used for script executions when no ScriptContext is specified.context - A ScriptContext that will replace the default ScriptContext in
the ScriptEngine.NullPointerException - if context is null.ScriptEngineFactory getFactory()
ScriptEngineFactory for the class to which this ScriptEngine belongs.ScriptEngineFactory Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2018, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.