001package gudusoft.gsqlparser.stmt.teradata;
002
003import gudusoft.gsqlparser.EDbVendor;
004import gudusoft.gsqlparser.ESqlStatementType;
005import gudusoft.gsqlparser.TCustomSqlStatement;
006import gudusoft.gsqlparser.nodes.TDummy;
007import gudusoft.gsqlparser.nodes.TObjectName;
008import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
009
010public class TAllocateStmt extends TCustomSqlStatement {
011
012    private TObjectName procedureName;
013    private TObjectName cursorName;
014
015    public TObjectName getCursorName() {
016        return cursorName;
017    }
018
019    public TObjectName getProcedureName() {
020        return procedureName;
021    }
022
023    public TAllocateStmt(EDbVendor dbvendor) {
024        super(dbvendor);
025        sqlstatementtype = ESqlStatementType.sstAllocate;
026    }
027
028    public int doParseStatement(TCustomSqlStatement psql) {
029        if (rootNode == null) return -1;
030        super.doParseStatement(psql);
031        TDummy allocateNode = (TDummy)rootNode;
032        cursorName = (TObjectName)allocateNode.node1;
033        procedureName = (TObjectName)allocateNode.node2;
034        return 0;
035
036    }
037
038    public void accept(TParseTreeVisitor v){
039        v.preVisit(this);
040        v.postVisit(this);
041    }
042
043    public void acceptChildren(TParseTreeVisitor v){
044        v.preVisit(this);
045        v.postVisit(this);
046    }
047
048}