ID - 名单ID类型public static class AccessChecker.FreqChecker<ID> extends AccessChecker<ID>
AccessChecker的频率限制检查AccessChecker.AccessCheckerException, AccessChecker.AddressChecker<ID>, AccessChecker.AddressException, AccessChecker.BlacklistChecker<ID>, AccessChecker.BlacklistException, AccessChecker.FreqChecker<ID>, AccessChecker.FreqException, AccessChecker.FreqStatChecker<ID>cache, cacheMap, expireMills, NULL_OBJ| 构造器和说明 |
|---|
FreqChecker(long expireMills)
构造方法
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
checkFreq(ID id)
频率限制检查
检查指定的 id是否存在于缓存中,如果存在则抛出异常,
如果不存在,则将,id添加到缓存 |
void |
checkFreq(ID id,
java.lang.Long timestamp)
频率限制检查
检查指定的 id是否存在于缓存中,如果存在且缓存中保存的时间戳与输入时间戳之差小于expireMills则抛出异常,
如果不存在,则将,id添加到缓存 |
void |
checkFreq(ID id,
java.lang.Long timestamp,
boolean absCheck)
频率限制检查
检查指定的 id是否存在于缓存中,如果存在且缓存中保存的时间戳与输入时间戳之差小于expireMills则抛出异常,
如果不存在,则将,id添加到缓存 |
public FreqChecker(long expireMills)
expireMills - 缓存数据有效期(毫秒),必须大于0,过期自动从缓存删除public void checkFreq(ID id) throws AccessChecker.FreqException
id是否存在于缓存中,如果存在则抛出异常,
如果不存在,则将,id添加到缓存id - 为null忽略AccessChecker.FreqExceptionpublic void checkFreq(ID id, java.lang.Long timestamp, boolean absCheck) throws AccessChecker.FreqException
id是否存在于缓存中,如果存在且缓存中保存的时间戳与输入时间戳之差小于expireMills则抛出异常,
如果不存在,则将,id添加到缓存id - 为null忽略timestamp - 时间戳,为null时调用checkFreq(Object)absCheck - 为true时使用时间戳之差的绝对值来检查AccessChecker.FreqExceptionpublic void checkFreq(ID id, java.lang.Long timestamp) throws AccessChecker.FreqException
id是否存在于缓存中,如果存在且缓存中保存的时间戳与输入时间戳之差小于expireMills则抛出异常,
如果不存在,则将,id添加到缓存id - 为null忽略timestamp - 时间戳,为null时调用checkFreq(Object)AccessChecker.FreqExceptionCopyright © 2023. All Rights Reserved.