package com.hzs.system.tools.service;

import com.hzs.common.core.constant.CacheConstants;

/**
 * 解决系统幂等性的公共方法
 */
public interface IIdempotentService {

    /**
     * 保证幂等性token失效时间
     */
    long EXPIRE_TIME = CacheConstants.LOGIN_TOKEN_EXPIRATION;

    /**
     * 生成唯一的token
     */
    String generateToken();

    /**
     * 验证token，是否存在系统中
     */
    Boolean validateToken(String token);

    /**
     * 刷新token
     */
    void refreshToken(String token);
}
