モジュール java.scripting
パッケージ javax.script

クラスScriptEngineManager


  • public class ScriptEngineManager
    extends Object
    ScriptEngineManagerは、ScriptEngineクラスの検出およびインスタンス化メカニズムを実装します。また、Managerが作成したすべてのエンジンで共有される状態を格納するキーと値のペアのコレクションを維持します。 このクラスは、ScriptEngineFactoryのすべての実装を列挙するために、ServiceLoaderクラスに記述されているサービス・プロバイダ・メカニズムを使用します。

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

    マネージャによって管理され、「グローバル・スコープ」として参照されるキーと値のペアのBindingsは、ScriptEngineManagerが作成したScriptEngineのすべてのインスタンスで利用可能です。 通常、Bindingsの値は、すべてのスクリプトに公開されます。

    導入されたバージョン:
    1.6
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      ScriptEngineManager()
      このコンストラクタの呼出しの効果は、ScriptEngineManager(Thread.currentThread().getContextClassLoader())を呼び出した場合と同じになります。
      ScriptEngineManager​(ClassLoader loader)
      このコンストラクタは、サービス・プロバイダ・メカニズムを使用して、指定されたClassLoaderに可視のScriptEngineFactoryの実装をロードします。

      ローダーがnullの場合、プラットフォームにバンドルされているスクリプト・エンジン・ファクトリがロードされます。
    • コンストラクタの詳細

      • ScriptEngineManager

        public ScriptEngineManager()
        このコンストラクタの呼出しの効果は、ScriptEngineManager(Thread.currentThread().getContextClassLoader())を呼び出した場合と同じになります。
        関連項目:
        Thread.getContextClassLoader()
      • ScriptEngineManager

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

        ローダーがnullの場合、プラットフォームにバンドルされているスクリプト・エンジン・ファクトリがロードされます。
        パラメータ:
        loader - スクリプト・エンジン・ファクトリの検出に使用するClassLoader。
    • メソッドの詳細

      • setBindings

        public void setBindings​(Bindings bindings)
        setBindingsは、globalScopeフィールド内に指定されたBindingsを格納します。 ScriptEngineManagerは、このBindingsを、生成したScriptEngineオブジェクトのグローバル・バインディングとして設定します。
        パラメータ:
        bindings - 指定されたBindings
        例外:
        IllegalArgumentException - バインディングがnullの場合。
      • getBindings

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

        public void put​(String key,
                        Object value)
        グローバル・スコープに、指定されたキーと値のペアを設定します。
        パラメータ:
        key - 設定するキー
        value - 設定する値。
        例外:
        NullPointerException - キーがnullの場合。
        IllegalArgumentException - キーが空の文字列である場合。
      • 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を検索および作成します。 getEngineByNameによって使用されているアルゴリズムを使用します。ただし、指定された拡張子を処理するためにregisterEngineExtensionを使用して登録されたScriptEngineFactoryが最初に検索されます。
        パラメータ:
        extension - 指定された拡張子
        戻り値:
        この拡張子を持つスクリプトを処理するエンジン。 見つからない場合はnull
        例外:
        NullPointerException - extensionがnullの場合。
      • getEngineByMimeType

        public ScriptEngine getEngineByMimeType​(String mimeType)
        指定されたMIMEタイプのScriptEngineを検索および作成します。 getEngineByNameによって使用されているアルゴリズムを使用します。ただし、指定されたMIMEタイプを処理するためにregisterEngineMimeTypeを使用して登録されたScriptEngineFactoryが最初に検索されます。
        パラメータ:
        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の場合。