clean cache disable
This commit is contained in:
parent
5b3687a062
commit
c05ec30330
@ -2,6 +2,7 @@ package me.xginko.villageroptimizer;
|
||||
|
||||
import com.github.benmanes.caffeine.cache.Cache;
|
||||
import com.github.benmanes.caffeine.cache.Caffeine;
|
||||
import me.xginko.villageroptimizer.utils.Disableable;
|
||||
import me.xginko.villageroptimizer.wrapper.WrappedVillager;
|
||||
import org.bukkit.entity.Villager;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@ -10,7 +11,7 @@ import java.time.Duration;
|
||||
import java.util.UUID;
|
||||
import java.util.concurrent.ConcurrentMap;
|
||||
|
||||
public final class VillagerCache {
|
||||
public final class VillagerCache implements Disableable {
|
||||
|
||||
private final @NotNull Cache<UUID, WrappedVillager> villagerCache;
|
||||
|
||||
@ -22,8 +23,10 @@ public final class VillagerCache {
|
||||
return this.villagerCache.asMap();
|
||||
}
|
||||
|
||||
public void clear() {
|
||||
this.villagerCache.asMap().clear();
|
||||
@Override
|
||||
public void disable() {
|
||||
this.villagerCache.invalidateAll();
|
||||
this.villagerCache.cleanUp();
|
||||
}
|
||||
|
||||
public @NotNull WrappedVillager createIfAbsent(@NotNull Villager villager) {
|
||||
|
@ -122,7 +122,7 @@ public final class VillagerOptimizer extends JavaPlugin {
|
||||
scheduling = null;
|
||||
}
|
||||
if (villagerCache != null) {
|
||||
villagerCache.clear();
|
||||
villagerCache.disable();
|
||||
villagerCache = null;
|
||||
}
|
||||
if (audiences != null) {
|
||||
@ -179,7 +179,7 @@ public final class VillagerOptimizer extends JavaPlugin {
|
||||
private void reloadConfiguration() {
|
||||
try {
|
||||
config = new Config();
|
||||
if (villagerCache != null) villagerCache.clear();
|
||||
if (villagerCache != null) villagerCache.disable();
|
||||
villagerCache = new VillagerCache(config.cache_keep_time_seconds);
|
||||
VillagerOptimizerCommand.reloadCommands();
|
||||
VillagerOptimizerModule.reloadModules();
|
||||
|
Loading…
x
Reference in New Issue
Block a user