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
Same as
eval(String) except that the source of the script is provided as a
Reader
|
Object |
eval(Reader
Same as
eval(String, Bindings) except that the source of the script is provided as a
Reader.
|
Object |
eval(Reader
Same as
eval(String, ScriptContext) where the source of the script is read from a
Reader.
|
Object |
eval(String
Executes the specified script.
|
Object |
eval(String
Executes the script using the
Bindings argument as the
ENGINE_SCOPE
Bindings of the
ScriptEngine during the script execution.
|
Object |
eval(String
Causes the immediate execution of the script whose source is the String passed as the first argument.
|
Object |
get(String
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
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
Sets a scope of named values to be used by scripts.
|
void |
setContext(ScriptContext
Sets the default
ScriptContext of the
ScriptEngine whose Bindings, Reader and Writers are used for script executions when no
ScriptContext is specified.
|
static final StringARGV
static final StringFILENAME
static final StringENGINE
ScriptEngine implementation.
static final StringENGINE_VERSION
ScriptEngine implementation.
static final StringNAME
ScriptEngineManager to locate a
ScriptEngine with a given name in the
getEngineByName method.
static final StringLANGUAGE
static final StringLANGUAGE_VERSION
Objecteval(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.
Objecteval(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.
Objecteval(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.
Objecteval(Reader reader) throws ScriptException
eval(String) except that the source of the script is provided as a
Reader
reader - The source of the script.
ScriptException - if an error occurs in script.
NullPointerException - if the argument is null.
Objecteval(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.
Objecteval(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(Stringkey, Object value)
getBindings(ScriptContext.ENGINE_SCOPE).put.
key - The name of named value to add
value - The value of named value to add.
NullPointerException - if key is null.
IllegalArgumentException - if key is empty.
Objectget(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).get
key - The key whose value is to be returned
NullPointerException - if key is null.
IllegalArgumentException - if key is empty.
BindingsgetBindings(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 invalid
void setBindings(Bindingsbindings, 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 invalid
NullPointerException - if the bindings is null and the scope is
ScriptContext.ENGINE_SCOPE
BindingscreateBindings()
Bindings.
Bindings that can be used to replace the state of this
ScriptEngine.
ScriptContextgetContext()
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(ScriptContextcontext)
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.
ScriptEngineFactorygetFactory()
ScriptEngineFactory for the class to which this
ScriptEngine belongs.
ScriptEngineFactory