bentobox/src/main/java/us/tastybento/bskyblock/database/PlayersManager.java

54 lines
1.3 KiB
Java
Executable File

package us.tastybento.bskyblock.database;
import java.util.HashMap;
import java.util.Map.Entry;
import java.util.UUID;
import us.tastybento.bskyblock.BSkyBlock;
import us.tastybento.bskyblock.database.objects.APlayer;
public class PlayersManager{
private BSkyBlock plugin;
private BSBDatabase database;
private HashMap<UUID, APlayer> players;
public PlayersManager(BSkyBlock plugin){
this.plugin = plugin;
database = BSBDatabase.getDatabase();
players = new HashMap<UUID, APlayer>();
}
public void load(){
//TODO
}
public void save(boolean async){
if(async){
plugin.getServer().getScheduler().runTaskAsynchronously(plugin, new Runnable() {
@Override
public void run() {
for(Entry<UUID, APlayer> entry : players.entrySet()){
database.savePlayerData(entry.getValue());
}
}
});
} else {
for(Entry<UUID, APlayer> entry : players.entrySet()){
database.savePlayerData(entry.getValue());
}
}
}
public void shutdown(){
save(false);
players.clear();
}
public APlayer getPlayer(UUID uuid){
return players.get(uuid);
}
}