shohaku.core.util.cel
クラス CELBinder

java.lang.Object
  拡張shohaku.core.util.cel.CELBinder

public class CELBinder
extends java.lang.Object

簡易式言語を任意に束ね実行する機能を提供します。

CEL(Composite Expression Language) の略です。

この言語はインタープリタであり、完全に実行時にコンパイルされます。
この言語は速度や機能の豊富さ、厳密性等よりも、柔軟性と簡易性を重視して設計されています。
厳密性や高度な機能を実現する場合、繰り返し実行する場合等の用途には向いていません。
平易な式を一回または数回処理する用途で使用する事が最適です。

束ねる「式」に応じて機能を増減出来ます。また機能拡張や機能縮小も比較的に簡単です。


コンストラクタの概要
CELBinder()
          デフォルトのロケールと空の式で初期化します。
CELBinder(Expression[] exps)
          式とデフォルトのロケールで初期化します。
CELBinder(java.util.Locale locale, Expression[] exps)
          ロケールと式を指定して初期化します。
 
メソッドの概要
 int findNextIndex(java.lang.String expression, int begin)
          次の式の開始位置(式の終端の次)を検出しインデックスを返します。
static CELBinder getBaseTypeCreationBinder()
          基本型の生成式バインダーを返却します。
static CELBinder getCollectionCreationBinder()
          コレクション型が生成可能なバインダーを返却します。
 Expression[] getExpressions()
          登録されている式一覧を返却します.
 java.util.Locale getLocale()
          ロケールを返却します.
static CELBinder getObjectCreationBinder()
          大半のオブジェクト型が生成可能なバインダーを返却します。
 java.lang.Object getValue(java.lang.String expression)
          式変換を実行します。
 java.lang.Object getValue(java.lang.String expression, int begin, int end, Parameters args)
          式変換を実行します。
 java.lang.Object getValue(java.lang.String expression, Parameters args)
          式変換を実行します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

CELBinder

public CELBinder()
デフォルトのロケールと空の式で初期化します。


CELBinder

public CELBinder(Expression[] exps)
式とデフォルトのロケールで初期化します。

パラメータ:
exps - 式

CELBinder

public CELBinder(java.util.Locale locale,
                 Expression[] exps)
ロケールと式を指定して初期化します。

パラメータ:
locale - ロケール
exps - 式
メソッドの詳細

getExpressions

public Expression[] getExpressions()
登録されている式一覧を返却します.

戻り値:
登録されている式一覧

getLocale

public java.util.Locale getLocale()
ロケールを返却します.

戻り値:
ロケール

getValue

public java.lang.Object getValue(java.lang.String expression)
式変換を実行します。

パラメータ:
expression - 式構文
戻り値:
式の結果

getValue

public java.lang.Object getValue(java.lang.String expression,
                                 Parameters args)
式変換を実行します。

パラメータ:
expression - 式構文
args - 式構文から参照する値
戻り値:
式の結果

getValue

public java.lang.Object getValue(java.lang.String expression,
                                 int begin,
                                 int end,
                                 Parameters args)
式変換を実行します。

パラメータ:
expression - 式構文
begin - 式構文中の式の開始インデックス
end - 式構文中の式の終了インデックス
args - 式構文から参照する値
戻り値:
式の結果

findNextIndex

public int findNextIndex(java.lang.String expression,
                         int begin)
次の式の開始位置(式の終端の次)を検出しインデックスを返します。

パラメータ:
expression - 式文字列
begin - 式の相対開始位置
戻り値:
次の式の開始位置

getBaseTypeCreationBinder

public static CELBinder getBaseTypeCreationBinder()
基本型の生成式バインダーを返却します。
プリミティブ型、文字列型、日付型、正規表現の生成機能をを提供しています。

戻り値:
基本型の生成式バインダー

getCollectionCreationBinder

public static CELBinder getCollectionCreationBinder()
コレクション型が生成可能なバインダーを返却します。
基本型に加え、コレクション(Map, Set, List)の生成機能をを提供しています。

戻り値:
コレクション型が生成可能なバインダー

getObjectCreationBinder

public static CELBinder getObjectCreationBinder()
大半のオブジェクト型が生成可能なバインダーを返却します。
コレクション型に加え、インスタンス生成式を提供しています。

戻り値:
大半のオブジェクト型が生成可能なバインダー