- 既知のすべての実装クラス:
SimpleScriptContext
public interface ScriptContext
このインタフェースを実装するクラスは、アプリケーションでスクリプト・エンジンと、スコープ設定されたBindingsなどのオブジェクトとを接続するために使用されます。 各スコープは、
ScriptContext
メソッドを使用して設定および取得可能な値を持つ名前付き属性のセットです。 また、ScriptContextは、ScriptEngineが入力と出力に使用可能なReaderとWriterを公開します。 - 導入されたバージョン:
- 1.6
-
フィールドのサマリー
修飾子と型フィールド説明static final int
EngineScope属性は、単一のScriptEngine
の寿命を通じて可視です。また、属性のセットはエンジンごとに保持されます。static final int
GlobalScope属性は、同じScriptEngineFactoryによって作成されたすべてのエンジンに対して可視です。 -
メソッドのサマリー
修飾子と型メソッド説明getAttribute
(String name) スコープ内で、指定された名前を持つ属性の値を検索し、最初に見つかったものを取得します。getAttribute
(String name, int scope) 指定されたスコープ内の属性の値を取得します。int
getAttributesScope
(String name) 属性が定義されている最小のスコープを取得します。getBindings
(int scope) このScriptContext
内の指定されたスコープに関連付けられたBindings
を取得します。エラー出力を表示するときに使用するWriter
を返します。入力を読み込むためにスクリプトが使用するReader
を返します。ScriptContext内のスコープに対する、すべての有効値の不変のList
を返します。出力を表示するときに使用するスクリプトのWriter
を返します。removeAttribute
(String name, int scope) 指定されたスコープ内の属性を削除します。void
setAttribute
(String name, Object value, int scope) 指定されたスコープ内の属性の値を設定します。void
setBindings
(Bindings bindings, int scope) Bindings
インスタンスを、このScriptContext
内の特定のスコープに関連付けます。void
setErrorWriter
(Writer writer) エラー出力を表示するときに使用するWriter
を設定します。void
入力を読み込むためのスクリプトのReader
を設定します。void
出力を表示するときに使用するスクリプトのWriter
を設定します。
-
フィールド詳細
-
ENGINE_SCOPE
static final int ENGINE_SCOPEEngineScope属性は、単一のScriptEngine
の寿命を通じて可視です。また、属性のセットはエンジンごとに保持されます。- 関連項目:
-
GLOBAL_SCOPE
static final int GLOBAL_SCOPEGlobalScope属性は、同じScriptEngineFactoryによって作成されたすべてのエンジンに対して可視です。- 関連項目:
-
-
メソッドの詳細
-
setBindings
void setBindings(Bindings bindings, int scope) Bindings
インスタンスを、このScriptContext
内の特定のスコープに関連付けます。getAttribute
およびsetAttribute
メソッドの呼出しでは、特定のスコープに関するBindings
のget
およびput
メソッドをマッピングする必要があります。- パラメータ:
bindings
- 指定されたスコープに関連付けられるBindings
scope
- スコープ- 例外:
IllegalArgumentException
- この型のScriptContext内で指定されたスコープ値に対してBindings
が定義されていない場合。NullPointerException
- スコープの値がENGINE_SCOPE
で、指定されたBindings
がnullの場合。
-
getBindings
Bindings getBindings(int scope) このScriptContext
内の指定されたスコープに関連付けられたBindings
を取得します。- パラメータ:
scope
- スコープ- 戻り値:
- 関連付けられた
Bindings
。 設定されていない場合はnull
。 - 例外:
IllegalArgumentException
- この型のScriptContext
内で指定されたスコープ値に対してBindings
が定義されていない場合。
-
setAttribute
指定されたスコープ内の属性の値を設定します。 スコープがGLOBAL_SCOPE
で、GLOBAL_SCOPE
にバインディングが設定されていない場合、setAttributeコールはno-opです。- パラメータ:
name
- 設定する属性の名前value
- 属性の値scope
- 属性を設定するスコープ- 例外:
IllegalArgumentException
- nameが空の場合、またはスコープが無効の場合。NullPointerException
- 名前がnullの場合。
-
getAttribute
指定されたスコープ内の属性の値を取得します。- パラメータ:
name
- 取得する属性の名前。scope
- 属性を取得するスコープ。- 戻り値:
- 属性の値。 指定されたスコープ内に名前が存在しない場合は
null
。 - 例外:
IllegalArgumentException
- nameが空の場合、またはスコープの値が無効の場合。NullPointerException
- 名前がnullの場合。
-
removeAttribute
指定されたスコープ内の属性を削除します。- パラメータ:
name
- 削除する属性の名前scope
- 属性を削除するスコープ- 戻り値:
- 削除された値。
- 例外:
IllegalArgumentException
- nameが空の場合、またはスコープが無効の場合。NullPointerException
- 名前がnullの場合。
-
getAttribute
スコープ内で、指定された名前を持つ属性の値を検索し、最初に見つかったものを取得します。 検索の順序は、スコープ・パラメータの数値によって決まります(最小のスコープ値が先)。- パラメータ:
name
- 取得する属性の名前。- 戻り値:
- 指定された名前を持つ属性が定義されている最小のスコープ内の属性値。 指定された名前を持つ属性がどのスコープにも存在しない場合はnull。
- 例外:
NullPointerException
- 名前がnullの場合。IllegalArgumentException
- 名前が空の場合。
-
getAttributesScope
int getAttributesScope(String name) 属性が定義されている最小のスコープを取得します。- パラメータ:
name
- 属性の名前。- 戻り値:
- 最小のスコープ。 指定された名前を持つ属性がどのスコープでも定義されていない場合は -1。
- 例外:
NullPointerException
- nameがnullの場合。IllegalArgumentException
- nameが空の場合。
-
getWriter
-
getErrorWriter
-
setWriter
-
setErrorWriter
-
getReader
-
setReader
-
getScopes
-