インタフェースScriptEngine
- 既知のすべての実装クラス:
AbstractScriptEngine
public interface ScriptEngine
ScriptEngineは、この仕様のすべての実装で完全に機能することが必要なメソッドを持つ基本インタフェースです。 これらのメソッドは、基本的なスクリプト機能を提供します。 この単純なインタフェースに記述されたアプリケーションは、どの実装でも最小限の変更で動作することが期待されます。 スクリプトを実行するメソッド、値を設定および取得するメソッドが含まれます。
値は、2種類のキーと値のペアです。 1つ目のタイプのペアでは、各ペアのキーは予約済で、この仕様で、または個別の実装によって定義されます。 予約済のキーを持つペア内の値は、指定された意味を持ちます。
もう一方のタイプのペアでは、各ペアはJava言語のBindingsを作成します。通常、値はスクリプト内で、対応するキーまたはそれらの装飾された形式によって表されます。
- 導入されたバージョン:
- 1.6
-
フィールドのサマリー
フィールド修飾子と型フィールド説明static final String位置引数の配列をスクリプトに渡す名前付き値の予約済みキーです。static final StringScriptEngine実装の名前である名前付き値の予約済みキーです。static final StringScriptEngine実装のバージョンを識別する名前付き値の予約済みキーです。static final String実行中のファイルの名前である名前付き値の予約済みキーです。static final String実装がサポートするスクリプト言語の完全な名前である名前付き値の予約済みキーです。static final String実装がサポートするスクリプト言語のバージョンを識別する名前付き値の予約済みキーです。static final Stringスクリプト言語の短い名前を識別する名前付き値の予約済みキーです。 -
メソッドのサマリー
修飾子と型メソッド説明初期化されていないBindingsを返します。スクリプトのソースがReaderとして提供されることを除いて、eval(String)と同じです。スクリプトのソースがReaderとして提供されることを除いて、eval(String, Bindings)と同じです。eval(Reader reader, ScriptContext context) スクリプトのソースがReaderから読み込まれる場合、eval(String, ScriptContext)と同じです。指定されたスクリプトを実行します。スクリプトの実行中に、Bindings引数をScriptEngineのENGINE_SCOPEBindingsとして使用します。eval(String script, ScriptContext context) ソースが1番目の引数として渡されたStringであるスクリプトをただちに実行します。このエンジンの状態の値セットを取得します。getBindings(int scope) 名前付き値のスコープを返します。ScriptContextが指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngineのデフォルトのScriptContextを返します。このScriptEngineが属するクラスのScriptEngineFactoryを返します。voidScriptEngineの状態にキーと値のペアを設定します。キーが予約されているかどうかに基づいて、スクリプトの実行時、またはほかの方法で使用されるJava言語バインディングが設定されます。voidsetBindings(Bindings bindings, int scope) スクリプトによって使用される名前付き値のスコープを設定します。voidsetContext(ScriptContext context) ScriptContextが指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngineのデフォルトのScriptContextを設定します。
-
フィールド詳細
-
ARGV
-
FILENAME
-
ENGINE
-
ENGINE_VERSION
-
NAME
static final String NAMEスクリプト言語の短い名前を識別する名前付き値の予約済みキーです。 この名前は、ScriptEngineManagerが、getEngineByNameメソッドに指定された名前でScriptEngineを検索するときに使用します。- 関連項目:
-
LANGUAGE
-
LANGUAGE_VERSION
-
-
メソッドの詳細
-
eval
ソースが1番目の引数として渡されたStringであるスクリプトをただちに実行します。 スクリプトは、実行前に再解析または再コンパイルされる可能性があります。 変数値およびコンパイル済み手続きを含む、以前の実行でエンジンに残された状態は、この実行中に可視である可能性があります。- パラメータ:
script- スクリプト・エンジンによって実行されるスクリプト。context- 異なるスコープ内の属性セットを公開するScriptContext。 スコープScriptContext.ENGINE_SCOPEおよびScriptContext.GLOBAL_SCOPEの意味は、仕様で定義されている。ScriptContextのENGINE_SCOPEBindingsには、このスクリプトの実行中に使用される、アプリケーション・オブジェクトへのスクリプト変数のバインディングが含まれます。- 戻り値:
- スクリプトの実行によって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- どちらかの引数がnullである場合。
-
eval
スクリプトのソースがReaderから読み込まれる場合、eval(String, ScriptContext)と同じです。- パラメータ:
reader- スクリプト・エンジンによって実行されるスクリプトのソース。context- スクリプト・エンジンに渡されるScriptContext。- 戻り値:
- スクリプトの実行によって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- どちらかの引数がnullである場合。
-
eval
指定されたスクリプトを実行します。ScriptEngineのデフォルトのScriptContextが使用されます。- パラメータ:
script- 実行されるスクリプト言語ソース。- 戻り値:
- スクリプトの実行によって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- 引数がnullである場合。
-
eval
スクリプトのソースがReaderとして提供されることを除いて、eval(String)と同じです。- パラメータ:
reader- スクリプトのソース。- 戻り値:
- スクリプトによって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- 引数がnullである場合。
-
eval
スクリプトの実行中に、Bindings引数をScriptEngineのENGINE_SCOPEBindingsとして使用します。 デフォルトのScriptContextのReader、Writer、およびENGINE_SCOPE以外のBindingsが使用されます。ScriptEngineのENGINE_SCOPEBindingsは変更されず、そのマッピングもスクリプトの実行によって変更されません。- パラメータ:
script- スクリプトのソース。n- スクリプトの実行に使用される属性のBindings。- 戻り値:
- スクリプトによって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- どちらかの引数がnullである場合。
-
eval
スクリプトのソースがReaderとして提供されることを除いて、eval(String, Bindings)と同じです。- パラメータ:
reader- スクリプトのソース。n- 属性のBindings。- 戻り値:
- スクリプトによって返される値。
- スロー:
ScriptException- スクリプトでエラーが発生した場合。 ScriptEnginesは、基本となるスクリプトの実装によってスローされたチェック例外のScriptExceptionラッパーを作成およびスローする必要があります。NullPointerException- どちらかの引数がnullである場合。
-
put
ScriptEngineの状態にキーと値のペアを設定します。キーが予約されているかどうかに基づいて、スクリプトの実行時、またはほかの方法で使用されるJava言語バインディングが設定されます。getBindings(ScriptContext.ENGINE_SCOPE).putと同じ結果になります。- パラメータ:
key- 追加する名前付き値の名前value- 追加する名前付き値の値。- スロー:
NullPointerException- キーがnullの場合。IllegalArgumentException- keyが空の場合。
-
get
このエンジンの状態の値セットを取得します。 値は、実装に応じて、setValueを使用して設定された値、またはScriptEngineの状態のほかの値になります。getBindings(ScriptContext.ENGINE_SCOPE).getと同じ結果になります。- パラメータ:
key- 値が返されるキー- 戻り値:
- 指定されたキーの値
- スロー:
NullPointerException- キーがnullの場合。IllegalArgumentException- keyが空の場合。
-
getBindings
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- 指定されたスコープが無効な場合
-
setBindings
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である場合
-
createBindings
-
getContext
ScriptContext getContext()ScriptContextが指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngineのデフォルトのScriptContextを返します。- 戻り値:
ScriptEngineのデフォルトのScriptContext。
-
setContext
void setContext(ScriptContext context) ScriptContextが指定されていない場合にスクリプトの実行に使用されるBindings、Reader、およびWriterを持つScriptEngineのデフォルトのScriptContextを設定します。- パラメータ:
context-ScriptEngineのデフォルトのScriptContextを置換するScriptContext。- スロー:
NullPointerException- contextがnullの場合。
-
getFactory
ScriptEngineFactory getFactory()このScriptEngineが属するクラスのScriptEngineFactoryを返します。- 戻り値:
ScriptEngineFactory
-