Version: 3.1 Update
This commit is contained in:
28
src/main/java/hae/cache/CachePool.java
vendored
28
src/main/java/hae/cache/CachePool.java
vendored
@@ -1,20 +1,34 @@
|
||||
package hae.cache;
|
||||
|
||||
import java.util.HashMap;
|
||||
import com.github.benmanes.caffeine.cache.Cache;
|
||||
import com.github.benmanes.caffeine.cache.Caffeine;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class CachePool {
|
||||
private static final Map<String, Map<String, Map<String, Object>>> cache = new HashMap<>();
|
||||
private static final int MAX_SIZE = 100000;
|
||||
private static final int EXPIRE_DURATION = 5;
|
||||
|
||||
public static void addToCache(String key, Map<String, Map<String, Object>> value) {
|
||||
private static final Cache<String, Map<String, Map<String, Object>>> cache =
|
||||
Caffeine.newBuilder()
|
||||
.maximumSize(MAX_SIZE)
|
||||
.expireAfterWrite(EXPIRE_DURATION, TimeUnit.HOURS)
|
||||
.build();
|
||||
|
||||
public static void put(String key, Map<String, Map<String, Object>> value) {
|
||||
cache.put(key, value);
|
||||
}
|
||||
|
||||
public static Map<String, Map<String, Object>> getFromCache(String key) {
|
||||
return cache.get(key);
|
||||
public static Map<String, Map<String, Object>> get(String key) {
|
||||
return cache.getIfPresent(key);
|
||||
}
|
||||
|
||||
public static void removeFromCache(String key) {
|
||||
cache.remove(key);
|
||||
public static void remove(String key) {
|
||||
cache.invalidate(key);
|
||||
}
|
||||
|
||||
public static void clear() {
|
||||
cache.invalidateAll();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user