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