Expression evaluator

Expression evaluator コンポーネントの実装は、DefaultEXPEvaluator クラスによって実現されます。このクラスによって公開されている API を次に示します。
  • public HashMap<String, Serializable> evaluateExpressions(HashMap<String, String> expressions, Serializable inputData):一連の式を一括で評価する機能を備えた API です。この API は、式のコレクションと、これらの式を評価するために必要な入力データを受け取り、式の結果のコレクションを返します。入力式はマップとして指定されます。このマップ内では、それぞれの式が一意のキーに対応付けられます。API の結果として、式の結果を含んだマップが返されます。式の結果は、対応する式のキーにマップされます。評価に失敗した式は、結果セットに追加されません。ただし、それ以外の式は評価されて、それぞれの値が結果セットに追加されます。

  • public Serializable evaluateExpression(String expression, Serializable inputData):単一の式を評価する場合にはこの API が使用されます。この API は、式と、それを評価するために必要な入力データとを受け取り、実際に評価して、計算後の値を返します。

  • public void validateExpression(String expression):この API は、式の構文を検証します。式の構文が無効な場合、例外がスローされます。

この Bean に対し、次のプロパティを設定します。
  • variableResolver:このプロパティは、式評価ライブラリによって式で使用される変数を解決する Bean 機能にマップされます。

  • functionMapper:式に使用されている関数の参照を、実際に呼び出すことのできる関数へと解決する機能を持った Bean が、このプロパティによって対応付けられます。