Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.script
Class AbstractScriptEngine

    java.lang.Object
      javax.script.AbstractScriptEngine

All Implemented Interfaces:
  ScriptEngine

    public abstract class AbstractScriptEngine

extends Object
implements ScriptEngine

Provides a standard implementation for several of the variants of the `eval` method.
`eval(Reader)`

`eval(String)`

`eval(String, Bindings)`

`eval(Reader, Bindings)`
are implemented using the abstract methods
`eval(Reader,ScriptContext)` or `eval(String, ScriptContext)`
with a `SimpleScriptContext`.
A `SimpleScriptContext` is used as the default `ScriptContext` of the `AbstractScriptEngine`..

Since:
  1.6

Field Summary
`protected ScriptContext` | `context` The default `ScriptContext` of this `AbstractScriptEngine`.

Fields inherited from interface javax.script.ScriptEngine
`ARGV, ENGINE, ENGINE_VERSION, FILENAME, LANGUAGE, LANGUAGE_VERSION, NAME`

Constructor Summary
`AbstractScriptEngine()` Creates a new instance of AbstractScriptEngine using a `SimpleScriptContext` as its default `ScriptContext`.
`AbstractScriptEngine(Bindings n)` Creates a new instance using the specified `Bindings` as the `ENGINE_SCOPE` `Bindings` in the protected `context` field.

Method Summary
`Object` | `eval(Reader reader)` `eval(Reader)` calls the abstract `eval(Reader, ScriptContext)` passing the value of the `context` field.
`Object` | `eval(Reader reader, Bindings bindings)` `eval(Reader, Bindings)` calls the abstract `eval(Reader, ScriptContext)` method, passing it a `ScriptContext` whose Reader, Writers and Bindings for scopes other that `ENGINE_SCOPE` are identical to those members of the protected `context` field.
`Object` | `eval(String script)` Same as `eval(Reader)` except that the abstract `eval(String, ScriptContext)` is used.
`Object` | `eval(String script, Bindings bindings)` Same as `eval(Reader, Bindings)` except that the abstract `eval(String, ScriptContext)` is used.
`Object` | `get(String key)` Gets the value for the specified key in the `ENGINE_SCOPE` of the protected `context` field.
`Bindings` | `getBindings(int scope)` Returns the `Bindings` with the specified scope value in the protected `context` field.
`ScriptContext` | `getContext()` Returns the value of the protected `context` field.
`protected ScriptContext` | `getScriptContext(Bindings nn)` Returns a `SimpleScriptContext`.
`void` | `put(String key, Object value)` Sets the specified value with the specified key in the `ENGINE_SCOPE` `Bindings` of the protected `context` field.
`void` | `setBindings(Bindings bindings, int scope)` Sets the `Bindings` with the corresponding scope value in the `context` field.
`void` | `setContext(ScriptContext ctxt)` Sets the value of the protected `context` field to the specified `ScriptContext`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface javax.script.ScriptEngine
`createBindings, eval, eval, getFactory`

Field Detail

### context

    protected ScriptContext context

  The default `ScriptContext` of this `AbstractScriptEngine`.

Constructor Detail

### AbstractScriptEngine

    public AbstractScriptEngine()

  Creates a new instance of AbstractScriptEngine using a `SimpleScriptContext` as its default `ScriptContext`.

### AbstractScriptEngine

    public AbstractScriptEngine(Bindings n)

  Creates a new instance using the specified `Bindings` as the `ENGINE_SCOPE` `Bindings` in the protected `context` field.

  Parameters:
    `n` - The specified `Bindings`.
  Throws:
    `NullPointerException` - if n is null.

Method Detail

### setContext

    public void setContext(ScriptContext ctxt)

  Sets the value of the protected `context` field to the specified `ScriptContext`.

  Specified by:
    `setContext` in interface `ScriptEngine`
  Parameters:
    `ctxt` - The specified `ScriptContext`.
  Throws:
    `NullPointerException` - if ctxt is null.

### getContext

    public ScriptContext getContext()

  Returns the value of the protected `context` field.

  Specified by:
    `getContext` in interface `ScriptEngine`
  Returns:
    The value of the protected `context` field.

### getBindings

    public Bindings getBindings(int scope)

  Returns the `Bindings` with the specified scope value in the protected `context` field.

  Specified by:
    `getBindings` in interface `ScriptEngine`
  Parameters:
    `scope` - The specified scope
  Returns:
    The corresponding `Bindings`.
  Throws:
    `IllegalArgumentException` - if the value of scope is invalid for the type the protected `context` field.

### setBindings

    public void setBindings(Bindings bindings,
                            int scope)

  Sets the `Bindings` with the corresponding scope value in the `context` field.

  Specified by:
    `setBindings` in interface `ScriptEngine`
  Parameters:
    `bindings` - The specified `Bindings`.
    `scope` - The specified scope.
  Throws:
    `IllegalArgumentException` - if the value of scope is invalid for the type the `context` field.
    `NullPointerException` - if the bindings is null and the scope is `ScriptContext.ENGINE_SCOPE`

### put

    public void put(String key,
                    Object value)

  Sets the specified value with the specified key in the `ENGINE_SCOPE` `Bindings` of the protected `context` field.

  Specified by:
    `put` in interface `ScriptEngine`
  Parameters:
    `key` - The specified key.
    `value` - The specified value.
  Throws:
    `NullPointerException` - if key is null.
    `IllegalArgumentException` - if key is empty.

### get

    public Object get(String key)

  Gets the value for the specified key in the `ENGINE_SCOPE` of the protected `context` field.

  Specified by:
    `get` in interface `ScriptEngine`
  Parameters:
    `key` - The key whose value is to be returned
  Returns:
    The value for the specified key.
  Throws:
    `NullPointerException` - if key is null.
    `IllegalArgumentException` - if key is empty.

### eval

    public Object eval(Reader reader,
                       Bindings bindings)
                throws ScriptException

  `eval(Reader, Bindings)` calls the abstract `eval(Reader, ScriptContext)` method, passing it a `ScriptContext` whose Reader, Writers and Bindings for scopes other that `ENGINE_SCOPE` are identical to those members of the protected `context` field. The specified `Bindings` is used instead of the `ENGINE_SCOPE` `Bindings` of the `context` field.

  Specified by:
    `eval` in interface `ScriptEngine`
  Parameters:
    `reader` - A `Reader` containing the source of the script.
    `bindings` - A `Bindings` to use for the `ENGINE_SCOPE` while the script executes.
  Returns:
    The return value from `eval(Reader, ScriptContext)`
  Throws:
    `ScriptException` - if an error occurs in script.
    `NullPointerException` - if any of the parameters is null.

### eval

    public Object eval(String script,
                       Bindings bindings)
                throws ScriptException

  Same as `eval(Reader, Bindings)` except that the abstract `eval(String, ScriptContext)` is used.

  Specified by:
    `eval` in interface `ScriptEngine`
  Parameters:
    `script` - A `String` containing the source of the script.
    `bindings` - A `Bindings` to use as the `ENGINE_SCOPE` while the script executes.
  Returns:
    The return value from `eval(String, ScriptContext)`
  Throws:
    `ScriptException` - if an error occurs in script.
    `NullPointerException` - if any of the parameters is null.

### eval

    public Object eval(Reader reader)
                throws ScriptException

  `eval(Reader)` calls the abstract `eval(Reader, ScriptContext)` passing the value of the `context` field.

  Specified by:
    `eval` in interface `ScriptEngine`
  Parameters:
    `reader` - A `Reader` containing the source of the script.
  Returns:
    The return value from `eval(Reader, ScriptContext)`
  Throws:
    `ScriptException` - if an error occurs in script.
    `NullPointerException` - if any of the parameters is null.

### eval

    public Object eval(String script)
                throws ScriptException

  Same as `eval(Reader)` except that the abstract `eval(String, ScriptContext)` is used.

  Specified by:
    `eval` in interface `ScriptEngine`
  Parameters:
    `script` - A `String` containing the source of the script.
  Returns:
    The return value from `eval(String, ScriptContext)`
  Throws:
    `ScriptException` - if an error occurrs in script.
    `NullPointerException` - if any of the parameters is null.

### getScriptContext

    protected ScriptContext getScriptContext(Bindings nn)

  Returns a `SimpleScriptContext`. The `SimpleScriptContext`:
  - Uses the specified `Bindings` for its `ENGINE_SCOPE`
  - Uses the `Bindings` returned by the abstract `getGlobalScope` method as its `GLOBAL_SCOPE`
  - Uses the Reader and Writer in the default `ScriptContext` of this `ScriptEngine`
  A `SimpleScriptContext` returned by this method is used to implement eval methods using the abstract `eval(Reader,Bindings)` and `eval(String,Bindings)` versions.

  Parameters:
    `nn` - Bindings to use for the `ENGINE_SCOPE`
  Returns:
    The `SimpleScriptContext`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Java™ Platform Standard Ed. 6
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 1993, 2010, Oracle and/or its affiliates. All rights reserved.