JavaTM Platform
Standard Ed. 6

javax.script
クラス ScriptEngineManager

java.lang.Object
  上位を拡張 javax.script.ScriptEngineManager

public class ScriptEngineManager
extends Object

ScriptEngineManager は、ScriptEngine クラスの検出およびインスタンス化機構を実装します。また、Manager が作成したすべてのエンジンで共有される状態を格納するキーと値のペアのコレクションを維持します。このクラスは、サービスプロバイダ機構を使用して、ScriptEngineFactory のすべての実装を列挙します。

ScriptEngineManager は、言語名、ファイル拡張子、および MIME タイプに基づいてファクトリを検索するユーティリティーメソッドと、これらすべてのファクトリの配列を返すメソッドを提供します。

マネージャーによって維持され、"Global Scope" として参照されるキーと値のペアの Bindings は、ScriptEngineManager が作成した ScriptEngine のすべてのインスタンスで利用可能です。通常、Bindings の値は、すべてのスクリプトで公開されます。

導入されたバージョン:
1.6

コンストラクタの概要
ScriptEngineManager()
          スレッドコンテキスト ClassLoader に呼び出し側からアクセスできる場合、このコンストラクタの呼び出しの効果は ScriptEngineManager(Thread.currentThread().getContextClassLoader()) を呼び出した場合と同じです。
ScriptEngineManager(ClassLoader loader)
          このコンストラクタは、サービスプロバイダ機構を使用して、指定された ClassLoader に可視の ScriptEngineFactory の実装をロードします。
 
メソッドの概要
 Object get(String key)
          グローバルスコープ内の指定されたキーに対する値を取得します。
 Bindings getBindings()
          getBindings は、globalScope フィールドの値を返します。
 ScriptEngine getEngineByExtension(String extension)
          指定された拡張子の ScriptEngine を検索および作成します。
 ScriptEngine getEngineByMimeType(String mimeType)
          指定された MIME タイプの ScriptEngine を検索および作成します。
 ScriptEngine getEngineByName(String shortName)
          指定された名前の ScriptEngine を検索および作成します。
 List<ScriptEngineFactory> getEngineFactories()
          検索機構によって見つかったすべての ScriptEngineFactory クラスのインスタンスが要素である配列を返します。
 void put(String key, Object value)
          グローバルスコープに、指定されたキーと値のペアを設定します。
 void registerEngineExtension(String extension, ScriptEngineFactory factory)
          拡張子を処理するための ScriptEngineFactory を登録します。
 void registerEngineMimeType(String type, ScriptEngineFactory factory)
          MIME タイプを処理するための ScriptEngineFactory を登録します。
 void registerEngineName(String name, ScriptEngineFactory factory)
          言語名を処理するための ScriptEngineFactory を登録します。
 void setBindings(Bindings bindings)
          setBindings は、globalScope フィールド内に指定された Bindings を格納します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

ScriptEngineManager

public ScriptEngineManager()
スレッドコンテキスト ClassLoader に呼び出し側からアクセスできる場合、このコンストラクタの呼び出しの効果は ScriptEngineManager(Thread.currentThread().getContextClassLoader()) を呼び出した場合と同じです。そうでない場合、効果は ScriptEngineManager(null) を呼び出した場合と同じです。

関連項目:
Thread.getContextClassLoader()

ScriptEngineManager

public ScriptEngineManager(ClassLoader loader)
このコンストラクタは、サービスプロバイダ機構を使用して、指定された ClassLoader に可視の ScriptEngineFactory の実装をロードします。

loader が null の場合、プラットフォームにバンドルされ、通常の拡張ディレクトリ (インストール型拡張機能) に存在するスクリプトエンジンファクトリがロードされます。

パラメータ:
loader - スクリプトエンジンファクトリの検出に使用する ClassLoader。
メソッドの詳細

setBindings

public void setBindings(Bindings bindings)
setBindings は、globalScope フィールド内に指定された Bindings を格納します。ScriptEngineManager は、この Bindings を、生成した ScriptEngine オブジェクトのグローバルバインディングとして設定します。

パラメータ:
bindings - 指定された Bindings
例外:
IllegalArgumentException - bindings が null の場合。

getBindings

public Bindings getBindings()
getBindings は、globalScope フィールドの値を返します。ScriptEngineManager は、この Bindings を、生成した ScriptEngine オブジェクトのグローバルバインディングとして設定します。

戻り値:
globalScope フィールド。

put

public void put(String key,
                Object value)
グローバルスコープに、指定されたキーと値のペアを設定します。

パラメータ:
key - 設定するキー
value - 設定する値
例外:
NullPointerException - key が null の場合。
IllegalArgumentException - key が空の文字列である場合。

get

public Object get(String key)
グローバルスコープ内の指定されたキーに対する値を取得します。

パラメータ:
key - 値が返されるキー。
戻り値:
指定されたキーの値。

getEngineByName

public ScriptEngine getEngineByName(String shortName)
指定された名前の ScriptEngine を検索および作成します。このアルゴリズムは最初に、registerEngineName メソッドを使用して、指定された名前のハンドラとして登録されている ScriptEngineFactory を検索します。

見つからない場合は、指定された名前のハンドラのコンストラクタによって格納された ScriptEngineFactory インスタンスの配列を検索します。いずれかのメソッドによって ScriptEngineFactory が見つかった場合、ScriptEngine のインスタンスを作成するために使用されます。

パラメータ:
shortName - ScriptEngineFactorygetNames メソッドによって返される ScriptEngine の実装の短い名前
戻り値:
検索で見つかったファクトリによって作成された ScriptEngine。このようなファクトリが見つからなかった場合は null。ScriptEngineManager は、独自の globalScope Bindings を、新しく作成された ScriptEngineGLOBAL_SCOPE Bindings として設定する。
例外:
NullPointerException - shortName が null の場合。

getEngineByExtension

public ScriptEngine getEngineByExtension(String extension)
指定された拡張子の ScriptEngine を検索および作成します。registerEngineExtension を使用して、指定された拡張子を処理するために登録された ScriptEngineFactory を最初に検索すること以外は、getEngineByName が使用するアルゴリズムが使用されます。

パラメータ:
extension - 指定された拡張子
戻り値:
この拡張子を持つスクリプトを処理するエンジン。見つからない場合は null
例外:
NullPointerException - extension が null の場合。

getEngineByMimeType

public ScriptEngine getEngineByMimeType(String mimeType)
指定された MIME タイプの ScriptEngine を検索および作成します。registerEngineMimeType を使用して、指定された MIME タイプを処理するために登録された ScriptEngineFactory を最初に検索すること以外は、getEngineByName が使用するアルゴリズムが使用されます。

パラメータ:
mimeType - 指定された MIME タイプ
戻り値:
この MIME タイプを持つスクリプトを処理するエンジン。見つからない場合は null
例外:
NullPointerException - mimeType が null の場合。

getEngineFactories

public List<ScriptEngineFactory> getEngineFactories()
検索機構によって見つかったすべての ScriptEngineFactory クラスのインスタンスが要素である配列を返します。

戻り値:
検出されたすべての ScriptEngineFactory のリスト。

registerEngineName

public void registerEngineName(String name,
                               ScriptEngineFactory factory)
言語名を処理するための ScriptEngineFactory を登録します。検出機構を使用して見つかったすべての関連付けをオーバーライドします。

パラメータ:
name - ScriptEngineFactory に関連付けられる名前。
factory - 指定された名前に関連付けるクラス。
例外:
NullPointerException - パラメータのいずれかが null の場合。

registerEngineMimeType

public void registerEngineMimeType(String type,
                                   ScriptEngineFactory factory)
MIME タイプを処理するための ScriptEngineFactory を登録します。検出機構を使用して見つかったすべての関連付けをオーバーライドします。

パラメータ:
type - ScriptEngineFactory に関連付けられる MIME タイプ。
factory - 指定された MIME タイプに関連付けるクラス。
例外:
NullPointerException - パラメータのいずれかが null の場合。

registerEngineExtension

public void registerEngineExtension(String extension,
                                    ScriptEngineFactory factory)
拡張子を処理するための ScriptEngineFactory を登録します。検出機構を使用して見つかったすべての関連付けをオーバーライドします。

パラメータ:
extension - ScriptEngineFactory に関連付けられる拡張子タイプ。
factory - 指定された拡張子に関連付けるクラス。
例外:
NullPointerException - パラメータのいずれかが null の場合。

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。