【fix sonar】LocalCacheUtil.java文件

This commit is contained in:
tianwenbo
2023-03-10 17:55:53 +08:00
parent 8abcb683c2
commit 9ac37b0f1e
@@ -1,5 +1,7 @@
package com.xxl.job.admin.core.util;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
@@ -9,6 +11,8 @@ import java.util.concurrent.ConcurrentMap;
* @author xuxueli 2018-01-22 21:37:34
*/
public class LocalCacheUtil {
private LocalCacheUtil() {
}
private static ConcurrentMap<String, LocalCacheData> cacheRepository = new ConcurrentHashMap<String, LocalCacheData>(); // 类型建议用抽象父类,兼容性更好;
private static class LocalCacheData{
@@ -120,10 +124,11 @@ public class LocalCacheUtil {
*/
public static boolean cleanTimeoutCache(){
if (!cacheRepository.keySet().isEmpty()) {
for (String key: cacheRepository.keySet()) {
LocalCacheData localCacheData = cacheRepository.get(key);
Set<Map.Entry<String, LocalCacheData>> entries = cacheRepository.entrySet();
for (Map.Entry<String, LocalCacheData> e :entries) {
LocalCacheData localCacheData = e.getValue();
if (localCacheData!=null && System.currentTimeMillis()>=localCacheData.getTimeoutTime()) {
cacheRepository.remove(key);
cacheRepository.remove(e.getKey());
}
}
}