content: package redis.clients.jedis.valueobject;
  
  import java.util.Map;
  import java.util.concurrent.ConcurrentMap;
  import java.util.concurrent.ConcurrentSkipListMap;
  
  /**
   * Created by yijunzhang on 14-9-26.
   */
  public class ReshardProcess {
  
      /**
       * 存储每个slot迁移的数量
       */
      private ConcurrentMap<Integer, Long> slotProcessMap = new ConcurrentSkipListMap<Integer, Long>();
  
      /**
       * 已完成迁移的slot数量
       */
      private volatile int reshardSlot;
  
      /**
       * 需要迁移的总数
       */
      private volatile int totalSlot;
  
      /**
       * 0,上线节点
       * 1,下线节点
       *
       */
      private volatile int type;
  
      /**
       * 0:运行中
       * 1:完成
       * 2:出错
       */
      private volatile int status;
  
      public Map<Integer, Long> getSlotProcessMap() {
          return slotProcessMap;
      }
  
      public int getReshardSlot() {
          return reshardSlot;
      }
  
      public int getTotalSlot() {
          return totalSlot;
      }
  
      public void setTotalSlot(int totalSlot) {
          this.totalSlot = totalSlot;
      }
  
      public void addReshardSlot(int slot, long removeCount) {
          reshardSlot += 1;
          slotProcessMap.put(slot, removeCount);
      }
  
      public void setStatus(int status) {
          this.status = status;
      }
  
      public int getStatus() {
          return status;
      }
  
      public int getType() {
          return type;
      }
  
      public void setType(int type) {
          this.type = type;
      }
  }
  