001package gudusoft.gsqlparser.stmt.hive; 002/* 003 * Date: 13-7-29 004 */ 005 006import gudusoft.gsqlparser.EDbVendor; 007import gudusoft.gsqlparser.ESqlStatementType; 008import gudusoft.gsqlparser.TCustomSqlStatement; 009import gudusoft.gsqlparser.TSourceToken; 010import gudusoft.gsqlparser.nodes.TObjectName; 011import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 012import gudusoft.gsqlparser.nodes.hive.THiveDropDBSqlNode; 013 014public class THiveDropDatabase extends TCustomSqlStatement { 015 016 private TObjectName dbName; 017 private TSourceToken databaseToken; 018 private boolean ifExists; 019 private TSourceToken restrictCascadeToken; 020 021 022 public THiveDropDatabase(EDbVendor dbvendor) { 023 super(dbvendor); 024 sqlstatementtype = ESqlStatementType.ssthiveDropDatabase; 025 } 026 027 public TSourceToken getDatabaseToken() { 028 return databaseToken; 029 } 030 031 public TObjectName getDbName() { 032 return dbName; 033 } 034 035 public boolean isIfExists() { 036 return ifExists; 037 } 038 039 public TSourceToken getRestrictCascadeToken() { 040 return restrictCascadeToken; 041 } 042 043 public int doParseStatement(TCustomSqlStatement psql) { 044 if (rootNode == null) return -1; 045 super.doParseStatement(psql); 046 THiveDropDBSqlNode node = (THiveDropDBSqlNode)rootNode; 047 dbName = node.getDbName(); 048 ifExists = node.isIfExists(); 049 databaseToken = node.getDatabaseToken(); 050 restrictCascadeToken = node.getRestrictCascadeToken(); 051 052 return 0; 053 } 054 055 public void accept(TParseTreeVisitor v){ 056 v.preVisit(this); 057 v.postVisit(this); 058 } 059 060 public void acceptChildren(TParseTreeVisitor v){ 061 v.preVisit(this); 062 v.postVisit(this); 063 } 064 065 public void setDbName(TObjectName dbName) { 066 this.dbName = dbName; 067 } 068 069 public void setIfExists(boolean ifExists) { 070 this.ifExists = ifExists; 071 } 072}