public interface ScriptEngine
ScriptEngine
は、この仕様のすべての実装で完全に機能することが必要なメソッドを持つ基本インタフェースです。修飾子と型 | フィールドと説明 |
---|---|
static String |
ARGV
位置引数の配列をスクリプトに渡す名前付き値の予約済みキーです。
|
static String |
ENGINE
ScriptEngine 実装の名前である名前付き値の予約済みキーです。 |
static String |
ENGINE_VERSION
ScriptEngine 実装のバージョンを識別する名前付き値の予約済みキーです。 |
static String |
FILENAME
実行中のファイルの名前である名前付き値の予約済みキーです。
|
static String |
LANGUAGE
実装がサポートするスクリプト言語の完全な名前である名前付き値の予約済みキーです。
|
static String |
LANGUAGE_VERSION
実装がサポートするスクリプト言語のバージョンを識別する名前付き値の予約済みキーです。
|
static String |
NAME
スクリプト言語の短い名前を識別する名前付き値の予約済みキーです。
|
修飾子と型 | メソッドと説明 |
---|---|
Bindings |
createBindings()
初期化されていない
Bindings を返します。 |
Object |
eval(Reader reader)
スクリプトのソースが
Reader として提供されることを除いて、eval(String) と同じです。 |
Object |
eval(Reader reader, Bindings n)
スクリプトのソースが
Reader として提供されることを除いて、eval(String, Bindings) と同じです。 |
Object |
eval(Reader reader, ScriptContext context)
スクリプトのソースが
Reader から読み込まれる場合、eval(String, ScriptContext) と同じです。 |
Object |
eval(String script)
指定されたスクリプトを実行します。
|
Object |
eval(String script, Bindings n)
スクリプトの実行中に、
Bindings 引数をScriptEngine のENGINE_SCOPE Bindings として使用します。 |
Object |
eval(String script, ScriptContext context)
ソースが1番目の引数として渡されたStringであるスクリプトをただちに実行します。
|
Object |
get(String key)
このエンジンの状態の値セットを取得します。
|
Bindings |
getBindings(int scope)
名前付き値のスコープを返します。
|
ScriptContext |
getContext()
ScriptContext が指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngine のデフォルトのScriptContext を返します。 |
ScriptEngineFactory |
getFactory()
この
ScriptEngine が属するクラスのScriptEngineFactory を返します。 |
void |
put(String key, Object value)
ScriptEngineの状態にキーと値のペアを設定します。キーが予約されているかどうかに基づいて、スクリプトの実行時、またはほかの方法で使用されるJava言語バインディングが設定されます。
|
void |
setBindings(Bindings bindings, int scope)
スクリプトによって使用される名前付き値のスコープを設定します。
|
void |
setContext(ScriptContext context)
ScriptContext が指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngine のデフォルトのScriptContext を設定します。 |
static final String ENGINE_VERSION
ScriptEngine
実装のバージョンを識別する名前付き値の予約済みキーです。static final String NAME
ScriptEngineManager
が、getEngineByName
メソッドに指定された名前でScriptEngine
を検索するときに使用します。Object eval(String script, ScriptContext context) throws ScriptException
script
- スクリプト・エンジンによって実行されるスクリプト。context
- 異なるスコープ内の属性セットを公開するScriptContext
。スコープScriptContext.ENGINE_SCOPE
およびScriptContext.GLOBAL_SCOPE
の意味は、仕様で定義されている。ScriptContext
のENGINE_SCOPE
Bindings
には、このスクリプトの実行中に使用される、アプリケーション・オブジェクトへのスクリプト変数のバインディングが含まれます。ScriptException
- スクリプトでエラーが発生した場合。ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptException
ラッパーを作成およびスローする必要があります。NullPointerException
- どちらかの引数がnullである場合。Object eval(Reader reader, ScriptContext context) throws ScriptException
Reader
から読み込まれる場合、eval(String, ScriptContext)
と同じです。reader
- スクリプト・エンジンによって実行されるスクリプトのソース。context
- スクリプト・エンジンに渡されるScriptContext
。ScriptException
- スクリプトでエラーが発生した場合。NullPointerException
- どちらかの引数がnullである場合。Object eval(String script) throws ScriptException
ScriptEngine
のデフォルトのScriptContext
が使用されます。script
- 実行されるスクリプト言語ソース。ScriptException
- スクリプトでエラーが発生した場合。NullPointerException
- 引数がnullである場合。Object eval(Reader reader) throws ScriptException
Reader
として提供されることを除いて、eval(String)
と同じです。reader
- スクリプトのソース。ScriptException
- スクリプトでエラーが発生した場合。NullPointerException
- 引数がnullである場合。Object eval(String script, Bindings n) throws ScriptException
Bindings
引数をScriptEngine
のENGINE_SCOPE
Bindings
として使用します。デフォルトのScriptContext
のReader
、Writer
、およびENGINE_SCOPE
以外のBindings
が使用されます。ScriptEngine
のENGINE_SCOPE
Bindings
は変更されず、そのマッピングもスクリプトの実行によって変更されません。script
- スクリプトのソース。n
- スクリプトの実行に使用される属性のBindings
。ScriptException
- スクリプトでエラーが発生した場合。NullPointerException
- どちらかの引数がnullである場合。Object eval(Reader reader, Bindings n) throws ScriptException
Reader
として提供されることを除いて、eval(String, Bindings)
と同じです。reader
- スクリプトのソース。n
- 属性のBindings
。ScriptException
- エラーが発生した場合。NullPointerException
- どちらかの引数がnullである場合。void put(String key, Object value)
getBindings(ScriptContext.ENGINE_SCOPE).put
と同じ結果になります。key
- 追加する名前付き値の名前value
- 追加する名前付き値の値。NullPointerException
- キーがnullの場合。IllegalArgumentException
- keyが空の場合。Object get(String key)
setValue
を使用して設定された値、またはScriptEngine
の状態のほかの値になります。getBindings(ScriptContext.ENGINE_SCOPE).get
と同じ結果になります。key
- 値が返されるキーNullPointerException
- キーがnullの場合。IllegalArgumentException
- keyが空の場合。Bindings getBindings(int scope)
ScriptContext.GLOBAL_SCOPE
- グローバル・スコープを表す名前付き値のセット。このScriptEngine
がScriptEngineManager
によって作成される場合、マネージャはグローバル・スコープ・バインディングを設定します。このScriptEngine
に関連付けられたグローバル・スコープが存在しない場合はnull
です。ScriptContext.ENGINE_SCOPE
- このScriptEngine
の状態を表す名前付き値のセット。通常、値は関連付けられたキーを変数名として使用するスクリプトで可視です。ScriptEngine
のデフォルトのScriptContext
内で定義されているスコープの値。
Bindings
インスタンスは、ScriptEngine
のデフォルトのScriptContext
で対応する引数を指定して呼び出されたScriptContext
のgetBindings
メソッドによって返されるインスタンスと同じである必要があります。scope
- 返すBindings
を指定するScriptContext.ENGINE_SCOPE
またはScriptContext.GLOBAL_SCOPE
。ScriptContext
の実装では、追加のスコープを定義できる。ScriptEngine
のデフォルトのScriptContext
が追加のスコープを定義している場合、それらのいずれかを渡して、対応するBindings
を取得可能。Bindings
。IllegalArgumentException
- 指定されたスコープが無効な場合void setBindings(Bindings bindings, int scope)
ScriptContext.ENGINE_SCOPE
- 指定されたBindings
によって、ScriptEngine
のエンジン・スコープが置換されます。
ScriptContext.GLOBAL_SCOPE
- 指定されたBindings
はGLOBAL_SCOPE
として可視でなければなりません。
ScriptEngine
のデフォルトのScriptContext
内で定義されているスコープの値。
ScriptEngine
のデフォルトのScriptContext
上でscope
の対応する値を指定してScriptContext
のsetBindings
メソッドを呼び出した場合と同じ結果になります。bindings
- 指定されたスコープのBindings
。scope
- 指定されたスコープ。ScriptContext.ENGINE_SCOPE
、ScriptContext.GLOBAL_SCOPE
、またはその他のスコープの有効値のいずれか。IllegalArgumentException
- スコープが無効な場合NullPointerException
- bindingsがnullで、スコープがScriptContext.ENGINE_SCOPE
である場合Bindings createBindings()
Bindings
を返します。ScriptEngine
の状態を置換するために使用可能なBindings
。ScriptContext getContext()
ScriptContext
が指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngine
のデフォルトのScriptContext
を返します。ScriptEngine
のデフォルトのScriptContext
。void setContext(ScriptContext context)
ScriptContext
が指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngine
のデフォルトのScriptContext
を設定します。context
- ScriptEngine
のデフォルトのScriptContext
を置換するScriptContext
。NullPointerException
- contextがnullの場合。ScriptEngineFactory getFactory()
ScriptEngine
が属するクラスのScriptEngineFactory
を返します。ScriptEngineFactory
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.