package net.northking.cctp.common.sequence;

/**
 * 序列服务
 */
public interface SequenceService
{

  /**
   * 获取序列的下一个值
   *
   * @param key 序列名称（唯一）
   * @return 该序列的下一个值
   */
  Long nextValue(String key);

  /**
   * 获取序列跳过N个之后的值
   *
   * @param key       序列名称（唯一）
   * @param increment 跳过的数量
   * @return 跳过N个之后的值
   */
  Long skipValue(String key, int increment);

}
