diff --git a/src/main/java/com/gmail/nossr50/database/Database.java b/src/main/java/com/gmail/nossr50/database/Database.java index 966573e5d..26ce333db 100644 --- a/src/main/java/com/gmail/nossr50/database/Database.java +++ b/src/main/java/com/gmail/nossr50/database/Database.java @@ -23,13 +23,10 @@ import com.gmail.nossr50.spout.huds.SpoutHud; import com.gmail.nossr50.util.Users; public final class Database { - private Database() {} - private static String connectionString; private static String tablePrefix = Config.getInstance().getMySQLTablePrefix(); private static Connection connection = null; - private static mcMMO plugin = null; // Scale waiting time by this much per failed attempt private static final double SCALING_FACTOR = 40; @@ -49,6 +46,8 @@ public final class Database { // How many connection attemtps have failed private static int reconnectAttempt = 0; + private Database() {} + /** * Attempt to connect to the mySQL database. */ @@ -181,7 +180,7 @@ public final class Database { case INDEX: if(read("SHOW INDEX FROM " + tablePrefix + "skills").size() != 13) { - plugin.getLogger().info("Indexing tables, this may take a while on larger databases"); + mcMMO.p.getLogger().info("Indexing tables, this may take a while on larger databases"); write("ALTER TABLE `" + tablePrefix + "skills` ADD INDEX `idx_taming` (`taming`) USING BTREE, " + "ADD INDEX `idx_mining` (`mining`) USING BTREE, " + "ADD INDEX `idx_woodcutting` (`woodcutting`) USING BTREE, " @@ -417,7 +416,7 @@ public final class Database { if (connection != null && !connection.isClosed()) { // Schedule a database save if we really had an outage if (reconnectAttempt > 1) { - plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new SQLReconnect(), 5); + mcMMO.p.getServer().getScheduler().scheduleSyncDelayedTask(mcMMO.p, new SQLReconnect(), 5); } nextReconnectTimestamp = 0; reconnectAttempt = 0; @@ -514,7 +513,7 @@ public final class Database { } public static void purgePowerlessSQL() { - plugin.getLogger().info("Purging powerless users..."); + mcMMO.p.getLogger().info("Purging powerless users..."); HashMap> usernames = read("SELECT u.user FROM " + tablePrefix + "skills AS s, " + tablePrefix + "users AS u WHERE s.user_id = u.id AND (s.taming+s.mining+s.woodcutting+s.repair+s.unarmed+s.herbalism+s.excavation+s.archery+s.swords+s.axes+s.acrobatics+s.fishing) = 0"); write("DELETE FROM " + tablePrefix + "users WHERE " + tablePrefix + "users.id IN (SELECT * FROM (SELECT u.id FROM " + tablePrefix + "skills AS s, " + tablePrefix + "users AS u WHERE s.user_id = u.id AND (s.taming+s.mining+s.woodcutting+s.repair+s.unarmed+s.herbalism+s.excavation+s.archery+s.swords+s.axes+s.acrobatics+s.fishing) = 0) AS p)"); @@ -530,11 +529,11 @@ public final class Database { purgedUsers++; } - plugin.getLogger().info("Purged " + purgedUsers + " users from the database."); + mcMMO.p.getLogger().info("Purged " + purgedUsers + " users from the database."); } public static void purgeOldSQL() { - plugin.getLogger().info("Purging old users..."); + mcMMO.p.getLogger().info("Purging old users..."); long currentTime = System.currentTimeMillis(); long purgeTime = 2630000000L * Config.getInstance().getOldUsersCutoff(); HashMap> usernames = read("SELECT user FROM " + tablePrefix + "users WHERE ((" + currentTime + " - lastlogin*1000) > " + purgeTime + ")"); @@ -552,7 +551,7 @@ public final class Database { purgedUsers++; } - plugin.getLogger().info("Purged " + purgedUsers + " users from the database."); + mcMMO.p.getLogger().info("Purged " + purgedUsers + " users from the database."); } private static void printErrors(SQLException ex) {