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