package com.chenyang.druid.sql.dialect.gauss.ast.stmt;

import com.chenyang.druid.sql.ast.SQLExpr;
import com.chenyang.druid.sql.ast.SQLName;
import com.chenyang.druid.sql.ast.SQLStatementImpl;
import com.chenyang.druid.sql.ast.statement.SQLAlterStatement;
import com.chenyang.druid.sql.ast.statement.SQLUpdateSetItem;
import com.chenyang.druid.sql.dialect.gauss.visitor.GaussASTVisitor;
import com.chenyang.druid.sql.visitor.SQLASTVisitor;
import java.util.ArrayList;
import java.util.List;

public class GaussAlterViewStatement extends SQLStatementImpl implements SQLAlterStatement {
   private boolean ifExists;
   private boolean alter;
   private boolean column;
   private boolean setDefault;
   private boolean dropDefault;
   private boolean ownerTo;
   private boolean renameTo;
   private boolean rename;
   private boolean setSchema;
   private boolean set;
   private boolean reset;
   private SQLName viewName;
   private SQLName newViewName;
   private SQLName columnName;
   private SQLExpr defaultValue;
   private SQLExpr newOwner;
   private SQLExpr newSchema;
   private boolean materialized;
   private boolean columnTo;
   private SQLName newColumnName;
   private List<SQLUpdateSetItem> parameterList = new ArrayList();
   private List<SQLExpr> itemList = new ArrayList();

   public SQLName getNewColumnName() {
      return this.newColumnName;
   }

   public void setNewColumnName(SQLName newColumnName) {
      this.newColumnName = newColumnName;
   }

   public boolean isColumnTo() {
      return this.columnTo;
   }

   public void setColumnTo(boolean columnTo) {
      this.columnTo = columnTo;
   }

   public boolean isMaterialized() {
      return this.materialized;
   }

   public boolean isRename() {
      return this.rename;
   }

   public void setRename(boolean rename) {
      this.rename = rename;
   }

   public void setMaterialized(boolean materialized) {
      this.materialized = materialized;
   }

   public List<SQLExpr> getItemList() {
      return this.itemList;
   }

   public void setItemList(List<SQLExpr> itemList) {
      this.itemList = itemList;
   }

   public List<SQLUpdateSetItem> getParameterList() {
      return this.parameterList;
   }

   public void setParameterList(List<SQLUpdateSetItem> parameterList) {
      this.parameterList = parameterList;
   }

   public SQLExpr getNewSchema() {
      return this.newSchema;
   }

   public void setNewSchema(SQLExpr newSchema) {
      this.newSchema = newSchema;
   }

   public SQLExpr getNewOwner() {
      return this.newOwner;
   }

   public void setNewOwner(SQLExpr newOwner) {
      this.newOwner = newOwner;
   }

   public boolean isColumn() {
      return this.column;
   }

   public void setColumn(boolean column) {
      this.column = column;
   }

   public boolean isOwnerTo() {
      return this.ownerTo;
   }

   public void setOwnerTo(boolean ownerTo) {
      this.ownerTo = ownerTo;
   }

   public boolean isSetSchema() {
      return this.setSchema;
   }

   public void setSetSchema(boolean setSchema) {
      this.setSchema = setSchema;
   }

   public boolean isSet() {
      return this.set;
   }

   public void setSet(boolean set) {
      this.set = set;
   }

   public boolean isReset() {
      return this.reset;
   }

   public void setReset(boolean reset) {
      this.reset = reset;
   }

   public boolean isSetDefault() {
      return this.setDefault;
   }

   public void setSetDefault(boolean setDefault) {
      this.setDefault = setDefault;
   }

   public boolean isDropDefault() {
      return this.dropDefault;
   }

   public void setDropDefault(boolean dropDefault) {
      this.dropDefault = dropDefault;
   }

   public boolean isRenameTo() {
      return this.renameTo;
   }

   public void setRenameTo(boolean renameTo) {
      this.renameTo = renameTo;
   }

   public boolean isAlter() {
      return this.alter;
   }

   public void setAlter(boolean alter) {
      this.alter = alter;
   }

   public boolean isIfExists() {
      return this.ifExists;
   }

   public void setIfExists(boolean ifExists) {
      this.ifExists = ifExists;
   }

   public SQLName getViewName() {
      return this.viewName;
   }

   public void setViewName(SQLName viewName) {
      this.viewName = viewName;
   }

   public SQLName getNewViewName() {
      return this.newViewName;
   }

   public void setNewViewName(SQLName newViewName) {
      this.newViewName = newViewName;
   }

   public SQLName getColumnName() {
      return this.columnName;
   }

   public void setColumnName(SQLName columnName) {
      this.columnName = columnName;
   }

   public SQLExpr getDefaultValue() {
      return this.defaultValue;
   }

   public void setDefaultValue(SQLExpr defaultValue) {
      this.defaultValue = defaultValue;
   }

   public void accept0(SQLASTVisitor visitor) {
      this.accept0((GaussASTVisitor)visitor);
   }

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