Skip to content

Commit 7d3dc42

Browse files
authored
Merge pull request #27 from lunasaw/2.5.9
🔖 fix
2 parents f35e13c + ae0755f commit 7d3dc42

File tree

1 file changed

+15
-11
lines changed

1 file changed

+15
-11
lines changed

src/main/java/com/luna/common/cache/SimpleGuavaCache.java

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
import java.util.concurrent.Callable;
66
import java.util.concurrent.ConcurrentMap;
77
import java.util.concurrent.TimeUnit;
8-
import java.util.function.Function;
98
import java.util.stream.Collectors;
109

1110
import com.alibaba.fastjson2.JSON;
@@ -21,34 +20,39 @@
2120
@NoArgsConstructor
2221
public class SimpleGuavaCache<K, V> {
2322

23+
private static final Integer EXPRESS_TIME = 2;
24+
/** LRU缓存的最大个数 */
25+
private static final Long MAXIMUM_SIZE = 200L;
2426
private LoadingCache<K, V> cache;
25-
2627
private RemovalListener<K, V> listener;
27-
2828
private CacheLoader<K, V> loader;
2929

30-
private Integer expressTime = 2;
31-
32-
/** LRU缓存的最大个数 */
33-
private Long maximumSize = 200L;
34-
3530
public SimpleGuavaCache(CacheLoader<K, V> loader) {
3631
this(loader, new DefaultRemovalListener<>());
3732
this.loader = loader;
3833
}
3934

4035
public SimpleGuavaCache(CacheLoader<K, V> loader, RemovalListener<K, V> listener) {
4136
this.cache = CacheBuilder.newBuilder()
42-
.maximumSize(maximumSize)
37+
.maximumSize(MAXIMUM_SIZE)
38+
.expireAfterWrite(EXPRESS_TIME, TimeUnit.MINUTES)
39+
.removalListener(listener)
40+
.build(loader);
41+
}
42+
43+
public SimpleGuavaCache(RemovalListener<K, V> listener, CacheLoader<K, V> loader, Integer expressTime,
44+
Long MAXIMUM_SIZE) {
45+
this.cache = CacheBuilder.newBuilder()
46+
.maximumSize(MAXIMUM_SIZE)
4347
.expireAfterWrite(expressTime, TimeUnit.MINUTES)
4448
.removalListener(listener)
4549
.build(loader);
4650
}
4751

4852
public void refresh() {
4953
this.cache = CacheBuilder.newBuilder()
50-
.maximumSize(maximumSize)
51-
.expireAfterWrite(expressTime, TimeUnit.MINUTES)
54+
.maximumSize(MAXIMUM_SIZE)
55+
.expireAfterWrite(EXPRESS_TIME, TimeUnit.MINUTES)
5256
.removalListener(listener)
5357
.build(this.loader);
5458
}

0 commit comments

Comments
 (0)