⚡ 优化幂等模块多租户支持

This commit is contained in:
lbw committed 2023-07-13 14:37:14 +08:00
1 parent c660c1a997
commit ac8fa391bb
1 file changed
+7 -2
@@ -1,5 +1,6 @@
package com.pig4cloud.pigx.common.idempotent.aspect;
import cn.hutool.core.util.StrUtil;
import com.pig4cloud.pigx.common.core.util.KeyStrResolver;
import com.pig4cloud.pigx.common.idempotent.annotation.Idempotent;
import com.pig4cloud.pigx.common.idempotent.exception.IdempotentException;
@@ -26,6 +27,7 @@ import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
import java.util.concurrent.TimeUnit;
/**
@@ -53,7 +55,7 @@ public class IdempotentAspect {
private KeyResolver keyResolver;
@Autowired
private KeyStrResolver keyStrResolver;
private Optional<KeyStrResolver> keyStrResolverOptional;
@Pointcut("@annotation(com.pig4cloud.pigx.common.idempotent.annotation.Idempotent)")
public void pointCut() {
@@ -84,7 +86,10 @@ public class IdempotentAspect {
// 使用jstl 规则区分
key = keyResolver.resolver(idempotent, joinPoint);
}
key = keyStrResolver.extract(key,":");
if (keyStrResolverOptional.isPresent()) {
key = keyStrResolverOptional.get().extract(key, StrUtil.COLON);
}
long expireTime = idempotent.expireTime();
String info = idempotent.info();