org.seasar.extension.sql.parser
クラス SqlParserImpl

java.lang.Object
  拡張org.seasar.extension.sql.parser.SqlParserImpl
すべての実装インタフェース:
SqlParser

public class SqlParserImpl
extends java.lang.Object
implements SqlParser

SqlParserのための実装クラスです。

作成者:
higa

コンストラクタの概要
SqlParserImpl(java.lang.String sql)
          SqlParserImplを作成します。
SqlParserImpl(java.lang.String sql, boolean allowVariableSql)
          SqlParserImplを作成します。
 
メソッドの概要
protected static boolean isBeginComment(java.lang.String content)
          BEGINコメントかどうかを返します。
protected  boolean isElseMode()
          ELSEモードかどうかを返します。
protected static boolean isEndComment(java.lang.String content)
          ENDコメントかどうかを返します。
protected static boolean isIfComment(java.lang.String comment)
          IFコメントかどうかを返します。
protected static boolean isTargetComment(java.lang.String comment)
          対象とするコメントかどうかを返します。
 Node parse()
          SQLを解析してNodeのツリーを返します。
protected  void parseBegin()
          BEGINを解析します。
protected  void parseBindVariable()
          バインド変数を解析します。
protected  void parseComment()
          コメントを解析します。
protected  void parseCommentBindVariable()
          バインド変数コメントを解析します。
protected  void parseElse()
          ELSEを解析します。
protected  void parseEnd()
          ENDを解析します。
protected  void parseIf()
          IFを解析します。
protected  void parseSql()
          SQLを解析します。
protected  void parseToken()
          トークンを解析します。
protected  Node peek()
          一番上のノードを返します。
protected  Node pop()
          一番上のノードを取り出します。
protected  void push(Node node)
          ノードを一番上に追加します。
 void setAllowVariableSql(boolean allowVariableSql)
          可変なSQLを許可する場合はtrueを設定します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

SqlParserImpl

public SqlParserImpl(java.lang.String sql)
SqlParserImplを作成します。

パラメータ:
sql -

SqlParserImpl

public SqlParserImpl(java.lang.String sql,
                     boolean allowVariableSql)
SqlParserImplを作成します。

パラメータ:
sql - SQL
allowVariableSql - 可変なSQLを許可する場合はtrue
メソッドの詳細

parse

public Node parse()
インタフェース SqlParser の記述:
SQLを解析してNodeのツリーを返します。

定義:
インタフェース SqlParser 内の parse
戻り値:

parseToken

protected void parseToken()
トークンを解析します。


parseSql

protected void parseSql()
SQLを解析します。


parseComment

protected void parseComment()
コメントを解析します。


parseIf

protected void parseIf()
IFを解析します。


parseBegin

protected void parseBegin()
BEGINを解析します。


parseEnd

protected void parseEnd()
ENDを解析します。


parseElse

protected void parseElse()
ELSEを解析します。


parseCommentBindVariable

protected void parseCommentBindVariable()
バインド変数コメントを解析します。


parseBindVariable

protected void parseBindVariable()
バインド変数を解析します。


pop

protected Node pop()
一番上のノードを取り出します。

戻り値:
一番上のノード

peek

protected Node peek()
一番上のノードを返します。

戻り値:
一番上のノード

push

protected void push(Node node)
ノードを一番上に追加します。

パラメータ:
node - ノード

setAllowVariableSql

public void setAllowVariableSql(boolean allowVariableSql)
可変なSQLを許可する場合はtrueを設定します。

パラメータ:
allowVariableSql - 可変なSQLを許可する場合はtrue

isElseMode

protected boolean isElseMode()
ELSEモードかどうかを返します。

戻り値:
ELSEモードかどうか

isTargetComment

protected static boolean isTargetComment(java.lang.String comment)
対象とするコメントかどうかを返します。

パラメータ:
comment - コメント
戻り値:
対象とするコメントかどうか

isIfComment

protected static boolean isIfComment(java.lang.String comment)
IFコメントかどうかを返します。

パラメータ:
comment - コメント
戻り値:
IFコメントかどうか

isBeginComment

protected static boolean isBeginComment(java.lang.String content)
BEGINコメントかどうかを返します。

パラメータ:
content - コメント
戻り値:
BEGINコメントかどうか

isEndComment

protected static boolean isEndComment(java.lang.String content)
ENDコメントかどうかを返します。

パラメータ:
content - コメント
戻り値:
ENDコメントかどうか


Copyright © 2004-2014 The Seasar Foundation. All Rights Reserved.