001package gudusoft.gsqlparser.stmt.oceanbase; 002 003import gudusoft.gsqlparser.EDbVendor; 004import gudusoft.gsqlparser.ESqlStatementType; 005import gudusoft.gsqlparser.TCustomSqlStatement; 006import gudusoft.gsqlparser.nodes.TObjectName; 007import gudusoft.gsqlparser.nodes.TParseTreeVisitor; 008import gudusoft.gsqlparser.nodes.oceanbase.TOceanbaseDropResourcePoolSqlNode; 009 010/** 011 * OceanBase {@code DROP RESOURCE POOL} statement (Phase 4 Batch 2). 012 * 013 * <p>Tagged {@link ESqlStatementType#sstoceanbase_drop_resource_pool}. 014 * 015 * @since 4.0.1.4 016 */ 017public class TDropResourcePoolSqlStatement extends TCustomSqlStatement { 018 019 private TObjectName poolName; 020 021 public TDropResourcePoolSqlStatement(EDbVendor dbvendor) { 022 super(dbvendor); 023 this.sqlstatementtype = ESqlStatementType.sstoceanbase_drop_resource_pool; 024 } 025 026 public TObjectName getPoolName() { 027 return poolName; 028 } 029 030 @Override 031 public int doParseStatement(TCustomSqlStatement psql) { 032 if (rootNode == null) return -1; 033 super.doParseStatement(psql); 034 TOceanbaseDropResourcePoolSqlNode node = 035 (TOceanbaseDropResourcePoolSqlNode) rootNode; 036 this.poolName = node.getPoolName(); 037 return 0; 038 } 039 040 @Override 041 public void accept(TParseTreeVisitor v) { 042 v.preVisit(this); 043 v.postVisit(this); 044 } 045 046 @Override 047 public void acceptChildren(TParseTreeVisitor v) { 048 v.preVisit(this); 049 v.postVisit(this); 050 } 051}