001package gudusoft.gsqlparser.nodes.oceanbase;
002
003import gudusoft.gsqlparser.EDbObjectType;
004import gudusoft.gsqlparser.nodes.TObjectName;
005import gudusoft.gsqlparser.nodes.TParseTreeNode;
006import gudusoft.gsqlparser.nodes.TParseTreeVisitor;
007
008/**
009 * AST node for OceanBase {@code DROP OUTLINE} (Phase 4 Batch 8).
010 *
011 * @since 4.0.1.4
012 */
013public class TOceanbaseDropOutlineSqlNode extends TParseTreeNode {
014
015    private TObjectName outlineName;
016
017    public TObjectName getOutlineName() {
018        return outlineName;
019    }
020
021    public void setOutlineName(TObjectName outlineName) {
022        this.outlineName = outlineName;
023        if (outlineName != null) {
024            outlineName.setDbObjectType(EDbObjectType.database);
025        }
026    }
027
028    @Override
029    public void init(Object arg1) {
030        setOutlineName((TObjectName) arg1);
031    }
032
033    @Override
034    public void accept(TParseTreeVisitor v) {
035        v.preVisit(this);
036        v.postVisit(this);
037    }
038
039    @Override
040    public void acceptChildren(TParseTreeVisitor v) {
041        v.preVisit(this);
042        if (outlineName != null) outlineName.acceptChildren(v);
043        v.postVisit(this);
044    }
045}