package com.chenyang.druid.sql.dialect.mariadb.ast.statement;

import com.chenyang.druid.sql.ast.SQLName;
import com.chenyang.druid.sql.ast.expr.SQLCharExpr;
import com.chenyang.druid.sql.ast.expr.SQLIntegerExpr;
import com.chenyang.druid.sql.dialect.mariadb.visitor.MariadbASTVisitor;

public class MariadbMigrateStatement extends MariadbStatementImpl {
   private SQLName schema;
   private SQLCharExpr shardNames;
   private SQLIntegerExpr migrateType;
   private SQLCharExpr fromInsId;
   private SQLCharExpr fromInsIp;
   private SQLIntegerExpr fromInsPort;
   private SQLCharExpr fromInsStatus;
   private SQLCharExpr toInsId;
   private SQLCharExpr toInsIp;
   private SQLIntegerExpr toInsPort;
   private SQLCharExpr toInsStatus;

   public void accept0(MariadbASTVisitor visitor) {
      if (visitor.visit(this)) {
         this.acceptChild(visitor, this.schema);
         this.acceptChild(visitor, this.shardNames);
         this.acceptChild(visitor, this.migrateType);
         this.acceptChild(visitor, this.fromInsId);
         this.acceptChild(visitor, this.fromInsIp);
         this.acceptChild(visitor, this.fromInsPort);
         this.acceptChild(visitor, this.fromInsStatus);
         this.acceptChild(visitor, this.toInsId);
         this.acceptChild(visitor, this.toInsIp);
         this.acceptChild(visitor, this.toInsPort);
         this.acceptChild(visitor, this.toInsStatus);
      }

      visitor.endVisit(this);
   }

   public SQLName getSchema() {
      return this.schema;
   }

   public void setSchema(SQLName schema) {
      this.schema = schema;
   }

   public SQLCharExpr getShardNames() {
      return this.shardNames;
   }

   public void setShardNames(SQLCharExpr shardNames) {
      this.shardNames = shardNames;
   }

   public SQLIntegerExpr getMigrateType() {
      return this.migrateType;
   }

   public void setMigrateType(SQLIntegerExpr migrateType) {
      this.migrateType = migrateType;
   }

   public SQLCharExpr getFromInsId() {
      return this.fromInsId;
   }

   public void setFromInsId(SQLCharExpr fromInsId) {
      this.fromInsId = fromInsId;
   }

   public SQLCharExpr getFromInsIp() {
      return this.fromInsIp;
   }

   public void setFromInsIp(SQLCharExpr fromInsIp) {
      this.fromInsIp = fromInsIp;
   }

   public SQLIntegerExpr getFromInsPort() {
      return this.fromInsPort;
   }

   public void setFromInsPort(SQLIntegerExpr fromInsPort) {
      this.fromInsPort = fromInsPort;
   }

   public SQLCharExpr getFromInsStatus() {
      return this.fromInsStatus;
   }

   public void setFromInsStatus(SQLCharExpr fromInsStatus) {
      this.fromInsStatus = fromInsStatus;
   }

   public SQLCharExpr getToInsId() {
      return this.toInsId;
   }

   public void setToInsId(SQLCharExpr toInsId) {
      this.toInsId = toInsId;
   }

   public SQLCharExpr getToInsIp() {
      return this.toInsIp;
   }

   public void setToInsIp(SQLCharExpr toInsIp) {
      this.toInsIp = toInsIp;
   }

   public SQLIntegerExpr getToInsPort() {
      return this.toInsPort;
   }

   public void setToInsPort(SQLIntegerExpr toInsPort) {
      this.toInsPort = toInsPort;
   }

   public SQLCharExpr getToInsStatus() {
      return this.toInsStatus;
   }

   public void setToInsStatus(SQLCharExpr toInsStatus) {
      this.toInsStatus = toInsStatus;
   }
}
