Add CachedVaults

Only writes vaults to file on server shutdown or player quit, rather
than every inventory close event.

Also caches for read() events.
This commit is contained in:
Vaquxine
2015-05-25 20:09:09 -05:00
committed by drtshock
parent 89c57dc76d
commit 9cd5755d0a
5 changed files with 115 additions and 13 deletions
@@ -99,6 +99,9 @@ public class PlayerVaults extends JavaPlugin {
@Override
public void onDisable() {
for (Player player : Bukkit.getOnlinePlayers()) {
UUIDVaultManager.getInstance().getCachedVaults().flushVaultCacheToFile(player.getUniqueId());
UUIDVaultManager.getInstance().getCachedVaults().deleteVaultCache(player.getUniqueId());
if (this.inVault.containsKey(player.getName())) {
Inventory inventory = player.getOpenInventory().getTopInventory();
if (inventory.getViewers().size() == 1) {
@@ -117,6 +120,7 @@ public class PlayerVaults extends JavaPlugin {
player.closeInventory();
}
saveSignsFile();
}