Skip to content

Commit

Permalink
cleaned code
Browse files Browse the repository at this point in the history
removed unused stuff
  • Loading branch information
Biplon committed Aug 8, 2020
1 parent 69ac8d0 commit 45cd3bd
Show file tree
Hide file tree
Showing 11 changed files with 64 additions and 127 deletions.
2 changes: 1 addition & 1 deletion plugin.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: PlayertoSql
author: Vestri
description: Plugin Player to Sql
version: 0.31
version: 1.0
api-version: 1.15
main: pts.java.PlayertoSql
depend: [ProtocolLib]
Expand Down
50 changes: 4 additions & 46 deletions src/pts/java/ConfigManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,51 +36,9 @@ protected static void loadConfig()
}

//get values
joinLoadDelay = getConfigValueInt("general.loaddelay");
playerFile = getConfigValueBool("general.playerfile");
autosaveInterval = getConfigValueInt("general.autosaveinterval");
playercreate = getConfigValueBool("general.playercreate");
}

//try to get String value
public static String getConfigValueString(String value)
{
if (!PlayertoSql.getInstance().getConfig().contains(value))
{
PlayertoSql.getInstance().getLogger().severe("Value: " + value + " not found in config.yml of" + PlayertoSql.getInstance().getName());
return "ValueNotFound";
}
else
{
return PlayertoSql.getInstance().getConfig().getString(value);
}
}

//try to get Int value
public static int getConfigValueInt(String value)
{
if (!PlayertoSql.getInstance().getConfig().contains(value))
{
PlayertoSql.getInstance().getLogger().severe("Value: " + value + " not found in config.yml of" + PlayertoSql.getInstance().getName());
return 0;
}
else
{
return PlayertoSql.getInstance().getConfig().getInt(value);
}
}

//try to get Boolean
public static Boolean getConfigValueBool(String value)
{
if (!PlayertoSql.getInstance().getConfig().contains(value))
{
PlayertoSql.getInstance().getLogger().severe("Value: " + value + " not found in config.yml of" + PlayertoSql.getInstance().getName());
return false;
}
else
{
return PlayertoSql.getInstance().getConfig().getBoolean(value);
}
joinLoadDelay = PlayertoSql.getInstance().getConfig().getInt("general.loaddelay");
playerFile = PlayertoSql.getInstance().getConfig().getBoolean("general.playerfile");
autosaveInterval = PlayertoSql.getInstance().getConfig().getInt("general.autosaveinterval");
playercreate = PlayertoSql.getInstance().getConfig().getBoolean("general.playercreate");
}
}
21 changes: 11 additions & 10 deletions src/pts/java/PlayertoSql.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,16 @@ public class PlayertoSql extends JavaPlugin

static PlayerManager playerManager;

public static PlayertoSql getInstance()
{
return instance;
}

public PlayerManager getPlayerManager()
{
return playerManager;
}

//on enable plugin load config reg events and commands check if autosave an start it
public void onEnable()
{
Expand All @@ -34,7 +44,7 @@ public void onEnable()
new PlayerManagement();
regEvents();
regCommands();
if (ConfigManager.getConfigValueBool("general.autosave"))
if (getConfig().getBoolean("general.autosave"))
{
autosaveManager = new AutosaveManager();
}
Expand Down Expand Up @@ -77,13 +87,4 @@ public void onDisable()
Bukkit.getLogger().info("[PlayertoSql] has been disabled!");
}

public static PlayertoSql getInstance()
{
return instance;
}

public PlayerManager getPlayerManager()
{
return playerManager;
}
}
28 changes: 20 additions & 8 deletions src/pts/java/api/PlayerManagement.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,25 +17,28 @@ public static PlayerManagement getInstance()
{
return instance;
}

//check if player is not on disabledPlayerSaved list
//if not then start a task with 1 tick delay to save player
@SuppressWarnings("unused")
public boolean savePlayerSync(Player p)
{
if (!PlayertoSql.getInstance().getPlayerManager().disabledPlayerSaved.contains(p.getUniqueId()))
{
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), ()-> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(),false,"api async"));
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false, "api async"));
return true;
}
return false;
}

//start a task with 1 tick delay to save player
@SuppressWarnings("unused")
public boolean savePlayerIgnoreDisableSync(Player p)
{
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), ()-> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(),true,"api async"));
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), true, "api async"));
return true;
}

//check if player is not on disabledPlayerSaved list
//if not then start a async task to save player
@SuppressWarnings("unused")
Expand All @@ -44,76 +47,85 @@ public boolean savePlayerAsync(Player p)
if (!PlayertoSql.getInstance().getPlayerManager().disabledPlayerSaved.contains(p.getUniqueId()))
{
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(),false,"api sync"));
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false, "api sync"));
return true;
}
return false;
}

//start a async task to save player
@SuppressWarnings("unused")
public boolean savePlayerIgnoreDisableAsync(Player p)
{
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(),true,"api sync"));
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), true, "api sync"));
return true;
}

//add player to DisablePlayerSave list
@SuppressWarnings("unused")
public boolean disablePlayerSave(Player p)
{
PlayertoSql.getInstance().getPlayerManager().addDisablePlayerSave(p.getUniqueId());
return true;
}

//remove player to DisablePlayerSave list
@SuppressWarnings("unused")
public boolean enablePlayerSave(Player p)
{
PlayertoSql.getInstance().getPlayerManager().removeDisablePlayerSave(p.getUniqueId());
return true;
}

//check if player is not on disabledPlayerLoaded list
//if not then start a task with 1 tick delay to load player
@SuppressWarnings("unused")
public boolean loadPlayerSync(Player p)
{
if (!PlayertoSql.getInstance().getPlayerManager().disabledPlayerLoaded.contains(p.getUniqueId()))
{
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), ()-> PlayertoSql.getInstance().getPlayerManager().loadPlayer(p,false));
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().loadPlayer(p, false));
return true;
}
return false;
}

//start a task with 1 tick delay to load player
@SuppressWarnings("unused")
public boolean loadPlayerIgnoreDisableSync(Player p)
{
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), ()-> PlayertoSql.getInstance().getPlayerManager().loadPlayer(p,true));
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().loadPlayer(p, true));
return true;
}

//check if player is not on disabledPlayerLoaded list
//if not then start a async task to load player
@SuppressWarnings("unused")
public boolean loadPlayerAsync(Player p)
{
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().loadPlayer(p,false));
PlayertoSql.getInstance().getPlayerManager().loadPlayer(p, false));
return true;
}

//start a async task to load player
@SuppressWarnings("unused")
public boolean loadPlayerIgnoreDisableAsync(Player p)
{
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().loadPlayer(p,true));
PlayertoSql.getInstance().getPlayerManager().loadPlayer(p, true));
return true;
}

//add player to DisablePlayerLoad list
@SuppressWarnings("unused")
public boolean disablePlayerLoad(Player p)
{
PlayertoSql.getInstance().getPlayerManager().addDisablePlayerLoad(p.getUniqueId());
return true;
}

//remove player to DisablePlayerLoad list
@SuppressWarnings("unused")
public boolean enablePlayerLoad(Player p)
Expand Down
4 changes: 2 additions & 2 deletions src/pts/java/command/CommandSavePlayer.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,13 +32,13 @@ public boolean onCommand(CommandSender commandSender, Command command, String s,
if (args.length == 1)
{
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false,"Command"));
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false, "Command"));
return true;
}
//2 args save player sync 1 tick delay
else if (args.length == 2)
{
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false,"Command"));
Bukkit.getScheduler().runTask(PlayertoSql.getInstance(), () -> PlayertoSql.getInstance().getPlayerManager().savePlayer(p, p.getInventory().getStorageContents(), p.getInventory().getArmorContents(), p.getInventory().getExtraContents(), p.getEnderChest().getContents(), false, "Command"));
return true;
}
}
Expand Down
38 changes: 20 additions & 18 deletions src/pts/java/database/DatabaseManager.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package pts.java.database;

import pts.java.ConfigManager;
import pts.java.PlayertoSql;
import pts.java.player.ItemManager;
import org.bukkit.entity.Player;
Expand All @@ -24,9 +23,9 @@ public class DatabaseManager

static String date;

static String updateInventoryStatement = "";
static String updateArmorStatement = "";
static String updateEnderChestStatement = "";
static String updateInventoryStatement;
static String updateArmorStatement;
static String updateEnderChestStatement;

public static byte inventoryLength = 36;
public static byte enderChestLength = 27;
Expand Down Expand Up @@ -92,11 +91,11 @@ private void createStatementStrings()
//load all config values
private void loadConfigValues()
{
dbname = ConfigManager.getConfigValueString("database.mysql.databaseName");
playerTableName = ConfigManager.getConfigValueString("database.mysql.tableNameplayer");
playerInventoryTableName = ConfigManager.getConfigValueString("database.mysql.tableNameinventory");
playerInventoryArmorTableName = ConfigManager.getConfigValueString("database.mysql.tableNamearmor");
playerEnderChestTableName = ConfigManager.getConfigValueString("database.mysql.tableNameenderchest");
dbname = PlayertoSql.getInstance().getConfig().getString("database.mysql.databaseName");
playerTableName = PlayertoSql.getInstance().getConfig().getString("database.mysql.tableNameplayer");
playerInventoryTableName = PlayertoSql.getInstance().getConfig().getString("database.mysql.tableNameinventory");
playerInventoryArmorTableName = PlayertoSql.getInstance().getConfig().getString("database.mysql.tableNamearmor");
playerEnderChestTableName = PlayertoSql.getInstance().getConfig().getString("database.mysql.tableNameenderchest");

Date dt = new Date();
java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyyy-MM-dd");
Expand All @@ -106,15 +105,14 @@ private void loadConfigValues()
//create connection with db
private void createConnection(boolean reconnect)
{

String ssl = "";
String username = ConfigManager.getConfigValueString("database.mysql.user");
String password = ConfigManager.getConfigValueString("database.mysql.password");
if (ConfigManager.getConfigValueBool("database.mysql.host"))
String username = PlayertoSql.getInstance().getConfig().getString("database.mysql.user");
String password = PlayertoSql.getInstance().getConfig().getString("database.mysql.password");
if (PlayertoSql.getInstance().getConfig().getBoolean("database.mysql.host"))
{
ssl = "&sslMode=REQUIRED";
}
String server = "jdbc:mysql://" + ConfigManager.getConfigValueString("database.mysql.host") + ":" + ConfigManager.getConfigValueString("database.mysql.port") + "/" + dbname + "?autoReconnect=true&allowMultiQueries=true&rewriteBatchedStatements=true" + ssl;
String server = "jdbc:mysql://" + PlayertoSql.getInstance().getConfig().getString("database.mysql.host") + ":" + PlayertoSql.getInstance().getConfig().getString("database.mysql.port") + "/" + dbname + "?autoReconnect=true&allowMultiQueries=true&rewriteBatchedStatements=true" + ssl;
try
{
connection = DriverManager.getConnection(server, username, password);
Expand Down Expand Up @@ -196,15 +194,17 @@ private void setupTables()
" (`uuid_player` CHAR(128) NOT NULL," +
"`name` CHAR(128) NOT NULL," +
"`last_login` DATE NOT NULL," +
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8;";
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8" +
" ROW_FORMAT = DYNAMIC ;";

query = connection.prepareStatement(data);
query.execute();

data = "CREATE TABLE IF NOT EXISTS " + dbname + "." + playerInventoryTableName + " " +
"(`uuid_player` CHAR(128) NOT NULL," +
"" + createInventoryQueryString() + "" +
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8;";
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8 " +
" ROW_FORMAT = DYNAMIC;";

query = connection.prepareStatement(data);
query.execute();
Expand All @@ -216,15 +216,17 @@ private void setupTables()
"`slot_02_id` LONGTEXT NULL," +
"`slot_03_id` LONGTEXT NULL," +
"`slot_04_id` LONGTEXT NULL," + //offhand
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8;";
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8" +
" ROW_FORMAT = DYNAMIC;";

query = connection.prepareStatement(data);
query.execute();

data = "CREATE TABLE IF NOT EXISTS " + dbname + "." + playerEnderChestTableName + " " +
"(`uuid_player` CHAR(128) NOT NULL," +
"" + createEnderQuery() + "" +
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8;";
" PRIMARY KEY (`uuid_player`)) ENGINE = InnoDB DEFAULT CHARSET=utf8" +
" ROW_FORMAT = DYNAMIC;";

query = connection.prepareStatement(data);
query.execute();
Expand Down
1 change: 0 additions & 1 deletion src/pts/java/event/PlayerJoin.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import pts.java.player.PlayerManager;

public class PlayerJoin implements Listener
{
Expand Down
4 changes: 2 additions & 2 deletions src/pts/java/event/PlayerQuit.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ public void onDisconnect(final PlayerQuitEvent event)
Player p = event.getPlayer();
//start async player save
ItemStack[] inv = p.getInventory().getStorageContents();
ItemStack[] inva = p.getInventory().getArmorContents();
ItemStack[] inva = p.getInventory().getArmorContents();
ItemStack[] invae = p.getInventory().getExtraContents();
ItemStack[] inven = p.getEnderChest().getContents();
Bukkit.getScheduler().runTaskAsynchronously(PlayertoSql.getInstance(), () ->
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, inv,inva,invae ,inven ,false,"quitsave"));
PlayertoSql.getInstance().getPlayerManager().savePlayer(p, inv, inva, invae, inven, false, "quitsave"));
p.getInventory().clear();
}
}
Loading

0 comments on commit 45cd3bd

Please sign in to comment.