クラス AbstractNode
- java.lang.Object
-
- com.github.mygreen.splate.node.AbstractNode
-
- すべての実装されたインタフェース:
Node
- 直系の既知のサブクラス:
BindVariableNode
,ContainerNode
,EmbeddedValueNode
,ParenBindVariableNode
,PrefixSqlNode
,SqlNode
public abstract class AbstractNode extends Object implements Node
Node
の抽象クラスです。- バージョン:
- 0.2
- 作成者:
- higa, T.TSUCHIE
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 AbstractNode(int position)
コンストラクタ
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 void
addChild(Node node)
子供のNode
を追加します。protected <T> T
evaluateExpression(org.springframework.expression.Expression expression, org.springframework.expression.EvaluationContext evaluationContext, Class<T> requriedType, int position, String parsedSql)
EL式を評価します。protected Object
getBindVariableValue(Object value, SqlTemplateValueType valueType, int position, String parsedSql, String expression)
変換規則を元にバインド変数を変換します。Node
getChild(int index)
指定されたインデックス番号index
のNode
を返します。int
getChildSize()
子供の要素数を返します。protected String
getEmbeddedValue(Object value, SqlTemplateValueType valueType, int position, String parsedSql, String expression)
変換規則を元に埋め込み変数を変換します。int
getPosition()
テンプレート内での開始位置を返します。
-
-
-
メソッドの詳細
-
getChildSize
public int getChildSize()
インタフェースからコピーされた説明:Node
子供の要素数を返します。- 定義:
getChildSize
インタフェース内Node
- 戻り値:
- 要素数
-
getPosition
public int getPosition()
インタフェースからコピーされた説明:Node
テンプレート内での開始位置を返します。- 定義:
getPosition
インタフェース内Node
- 戻り値:
- テンプレート内での開始位置
-
evaluateExpression
protected <T> T evaluateExpression(org.springframework.expression.Expression expression, org.springframework.expression.EvaluationContext evaluationContext, Class<T> requriedType, int position, String parsedSql)
EL式を評価します。例外処理を含めて共通化のために切り出したメソッドです。
- 型パラメータ:
T
- 戻り値のタイプ- パラメータ:
expression
- EL式evaluationContext
- EL式のコンテキストrequriedType
- EL式の戻り値position
- テンプレートの位置情報parsedSql
- パース済みのSQLテンプレート- 戻り値:
- EL式の評価結果
- 例外:
NodeProcessException
- EL式の評価に失敗した場合にスローされます。- 導入されたバージョン:
- 0.2
-
getBindVariableValue
protected Object getBindVariableValue(Object value, SqlTemplateValueType valueType, int position, String parsedSql, String expression)
変換規則を元にバインド変数を変換します。例外処理を含めて共通化のために切り出したメソッドです。
変換規則がnullの場合は、変換対象の値をそのまま返します。
- パラメータ:
value
- 変換対象の値。valueType
- 変換規則position
- テンプレートの位置情報parsedSql
- パース済みのSQLテンプレートexpression
- 変換対象の値の元となったEL式- 戻り値:
- 変換した値。
- 例外:
NodeProcessException
- 変換時の処理に失敗した場合にスローされます。- 導入されたバージョン:
- 0.2
-
getEmbeddedValue
protected String getEmbeddedValue(Object value, SqlTemplateValueType valueType, int position, String parsedSql, String expression)
変換規則を元に埋め込み変数を変換します。例外処理を含めて共通化のために切り出したメソッドです。
変換規則がnullの場合は、変換対象の値をそのまま返します。
- パラメータ:
value
- 変換対象の値。valueType
- 変換規則position
- テンプレートの位置情報parsedSql
- パース済みのSQLテンプレートexpression
- 変換対象の値の元となったEL式- 戻り値:
- 変換した値。
- 例外:
NodeProcessException
- 変換時の処理に失敗した場合にスローされます。- 導入されたバージョン:
- 0.2
-
-