JavaTM Platform
Standard Ed. 6

javax.script
インタフェース ScriptEngineFactory


public interface ScriptEngineFactory

ScriptEngineFactory は、ScriptEngines の説明およびインスタンス化に使用されます。

ScriptEngine を実装する各クラスには、エンジンクラスを記述するメタデータを公開するための対応するファクトリが存在します。

ScriptEngineManager は、Jar File Specification に記述されたサービスプロバイダ機構を使用して、現在の ClassLoader で使用可能なすべての ScriptEngineFactories のインスタンスを取得します。

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

メソッドの概要
 String getEngineName()
          ScriptEngine の完全な名前を返します。
 String getEngineVersion()
          ScriptEngine のバージョンを返します。
 List<String> getExtensions()
          ファイル名拡張子の不変のリストを返します。
 String getLanguageName()
          この ScriptEngine がサポートするスクリプト言語の名前を返します。
 String getLanguageVersion()
          この ScriptEngine がサポートするスクリプト言語のバージョンを返します。
 String getMethodCallSyntax(String obj, String m, String... args)
          サポートされるスクリプト言語の構文を使用して Java オブジェクトのメソッドを呼び出すために使用可能な String を返します。
 List<String> getMimeTypes()
          エンジンが実行できるスクリプトに関連付けられた、MimeType の不変のリストを返します。
 List<String> getNames()
          ScriptEngine の短い名前の不変のリストを返します。
 String getOutputStatement(String toDisplay)
          サポートされるスクリプト言語の構文を使用して、指定された String を表示するための文として使用可能な String を返します。
 Object getParameter(String key)
          属性の値を返します。
 String getProgram(String... statements)
          指定された文を含む、スクリプト言語の有効な実行可能プログラムを返します。
 ScriptEngine getScriptEngine()
          この ScriptEngineFactory に関連付けられた ScriptEngine のインスタンスを返します。
 

メソッドの詳細

getEngineName

String getEngineName()
ScriptEngine の完全な名前を返します。たとえば、Mozilla Rhino Javascript エンジンに基づいた実装は Rhino Mozilla Javascript Engine を返します。

戻り値:
エンジンの実装の名前。

getEngineVersion

String getEngineVersion()
ScriptEngine のバージョンを返します。

戻り値:
ScriptEngine の実装のバージョン。

getExtensions

List<String> getExtensions()
ファイル名拡張子の不変のリストを返します。通常、ファイル名拡張子は、この ScriptEngine によってサポートされる言語で記述されたスクリプトを識別します。この配列は、ScriptEngineManagergetEngineByExtension メソッドを実装するために使用します。

戻り値:
拡張子のリスト。

getMimeTypes

List<String> getMimeTypes()
エンジンが実行できるスクリプトに関連付けられた、MimeType の不変のリストを返します。このリストは、ScriptEngineManager クラスが getEngineByMimetype メソッドを実装するために使用します。

戻り値:
MIME タイプのリスト。

getNames

List<String> getNames()
ScriptEngine の短い名前の不変のリストを返します。短い名前は、ScriptEngineManager による ScriptEngine の識別に使用可能です。たとえば、Mozilla Rhino Javascript エンジンに基づいた実装は {"javascript", "rhino"} を含むリストを返します。


getLanguageName

String getLanguageName()
この ScriptEngine がサポートするスクリプト言語の名前を返します。

戻り値:
サポートされる言語の名前。

getLanguageVersion

String getLanguageVersion()
この ScriptEngine がサポートするスクリプト言語のバージョンを返します。

戻り値:
サポートされる言語のバージョン。

getParameter

Object getParameter(String key)
属性の値を返します。この値は実装に固有の意味を持つ場合もあります。値がすべての実装で定義されるキーは次のとおりです。

これらのキーは、それぞれ getEngineNamegetEngineVersiongetNamegetLanguageName、および getLanguageVersion によって返される String です。

予約済みキー THREADING も定義されています。このキーの値は、スクリプトの並行実行と状態の管理に関するエンジンの動作を記述します。THREADING キーの値は次のとおりです。



実装で、実装に固有のキーが定義されることがあります。

パラメータ:
key - パラメータの名前
戻り値:
指定されたパラメータの値。キーに割り当てられている値がない場合は null

getMethodCallSyntax

String getMethodCallSyntax(String obj,
                           String m,
                           String... args)
サポートされるスクリプト言語の構文を使用して Java オブジェクトのメソッドを呼び出すために使用可能な String を返します。たとえば、Javascript エンジンの実装では次のようになります。 

 public String getMethodCallSyntax(String obj,
                                   String m, String... args) {
      String ret = obj;
      ret += "." + m + "(";
      for (int i = 0; i < args.length; i++) {
          ret += args[i];
          if (i == args.length - 1) {
              ret += ")";
          } else {
              ret += ",";
          }
      }
      return ret;
 }

パラメータ:
obj - 呼び出されるメソッドを持つオブジェクトを表す名前。これは、ScriptEngineput メソッド、ENGINE_SCOPE Bindingsput メソッド、または ScriptContextsetAttribute メソッドを使用してバインディングを作成するために使用する名前。スクリプトで使用される識別子は、指定された識別子のデコレートされた形式とすることもできる
m - 呼び出されるメソッドの名前。
args - メソッドの呼び出しで指定される引数の名前。
戻り値:
スクリプト言語の構文でメソッドの呼び出しに使用される String。

getOutputStatement

String getOutputStatement(String toDisplay)
サポートされるスクリプト言語の構文を使用して、指定された String を表示するための文として使用可能な String を返します。たとえば、Perl エンジンの実装では次のようになります。 

 


 public String getOutputStatement(String toDisplay) {
      return "print(" + toDisplay + ")";
 }
 

パラメータ:
toDisplay - 返される文によって表示される String。
戻り値:
スクリプト言語の構文で String の表示に使用される文字列。

getProgram

String getProgram(String... statements)
指定された文を含む、スクリプト言語の有効な実行可能プログラムを返します。たとえば、PHP エンジンの実装では次のようになります。

 


 public String getProgram(String... statements) {
      $retval = "<?\n";
      int len = statements.length;
      for (int i = 0; i < len; i++) {
          $retval += statements[i] + ";\n";
      }
      $retval += "?>";

 }
 

パラメータ:
statements - 実行される文。getMethodCallSyntax および getOutputStatement メソッドの呼び出しの戻り値になる可能性がある
戻り値:
プログラム

getScriptEngine

ScriptEngine getScriptEngine()
この ScriptEngineFactory に関連付けられた ScriptEngine のインスタンスを返します。通常、新しい ScriptEngine が返されますが、実装はエンジンをプール、共有、または再利用する可能性があります。

戻り値:
新しい ScriptEngine インスタンス。

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 も参照してください。