package com.chenyang.druid.sql.dialect.dm.ast.clause;

import com.chenyang.druid.sql.ast.SQLExpr;
import com.chenyang.druid.sql.ast.SQLObject;
import com.chenyang.druid.sql.dialect.dm.ast.DmSQLObjectImpl;
import com.chenyang.druid.sql.dialect.dm.visitor.DmASTVisitor;
import java.util.List;

public class DmStorageClause extends DmSQLObjectImpl implements SQLExpr {
   private SQLExpr initial;
   private SQLExpr next;
   private SQLExpr minExtents;
   private SQLExpr on;
   private SQLExpr fillfactor;
   private SQLExpr branchcount;
   private SQLExpr nobranchcount;
   private SQLExpr sectioncount;
   private boolean nobranch;
   private boolean clusterbtr;
   private boolean withCounter;
   private boolean withoutCounter;
   private boolean usingLongRow;
   private boolean statNone;

   public DmStorageClause clone() {
      DmStorageClause x = new DmStorageClause();
      if (this.initial != null) {
         x.setInitial(this.initial.clone());
      }

      if (this.next != null) {
         x.setNext(this.next.clone());
      }

      if (this.minExtents != null) {
         x.setMinExtents(this.minExtents.clone());
      }

      return x;
   }

   public List<SQLObject> getChildren() {
      return null;
   }

   public void accept0(DmASTVisitor visitor) {
      visitor.visit(this);
      visitor.endVisit(this);
   }

   public SQLExpr getSectioncount() {
      return this.sectioncount;
   }

   public void setSectioncount(SQLExpr sectioncount) {
      this.sectioncount = sectioncount;
   }

   public SQLExpr getNext() {
      return this.next;
   }

   public void setNext(SQLExpr next) {
      this.next = next;
   }

   public SQLExpr getMinExtents() {
      return this.minExtents;
   }

   public void setMinExtents(SQLExpr minExtents) {
      this.minExtents = minExtents;
   }

   public SQLExpr getInitial() {
      return this.initial;
   }

   public void setInitial(SQLExpr initial) {
      this.initial = initial;
   }

   public SQLExpr getOn() {
      return this.on;
   }

   public void setOn(SQLExpr on) {
      this.on = on;
   }

   public SQLExpr getFillfactor() {
      return this.fillfactor;
   }

   public void setFillfactor(SQLExpr fillfactor) {
      this.fillfactor = fillfactor;
   }

   public boolean isNobranch() {
      return this.nobranch;
   }

   public void setNobranch(boolean nobranch) {
      this.nobranch = nobranch;
   }

   public boolean isClusterbtr() {
      return this.clusterbtr;
   }

   public void setClusterbtr(boolean clusterbtr) {
      this.clusterbtr = clusterbtr;
   }

   public boolean isWithCounter() {
      return this.withCounter;
   }

   public void setWithCounter(boolean withCounter) {
      this.withCounter = withCounter;
   }

   public boolean isWithoutCounter() {
      return this.withoutCounter;
   }

   public void setWithoutCounter(boolean withoutCounter) {
      this.withoutCounter = withoutCounter;
   }

   public boolean isUsingLongRow() {
      return this.usingLongRow;
   }

   public void setUsingLongRow(boolean usingLongRow) {
      this.usingLongRow = usingLongRow;
   }

   public SQLExpr getBranchcount() {
      return this.branchcount;
   }

   public void setBranchcount(SQLExpr branchcount) {
      this.branchcount = branchcount;
   }

   public SQLExpr getNobranchcount() {
      return this.nobranchcount;
   }

   public void setNobranchcount(SQLExpr nobranchcount) {
      this.nobranchcount = nobranchcount;
   }

   public boolean isStatNone() {
      return this.statNone;
   }

   public void setStatNone(boolean statNone) {
      this.statNone = statNone;
   }
}
