diff --git a/pom.xml b/pom.xml index 8567d76..54f9b9d 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ com.songoda UltimateModeration 4.0.0 - 2 + 2.0.1 clean install UltimateModeration-${project.version} @@ -55,6 +55,9 @@ com.songoda:SongodaCore + com.zaxxer:HikariCP + org.slf4j:slf4j-api + org.slf4j:slf4j-nop @@ -117,5 +120,25 @@ LATEST compile + + com.zaxxer + HikariCP + 3.2.0 + + + org.xerial + sqlite-jdbc + 3.23.1 + + + org.slf4j + slf4j-api + 1.7.25 + + + org.slf4j + slf4j-nop + 1.7.25 + diff --git a/src/main/java/com/songoda/ultimatemoderation/UltimateModeration.java b/src/main/java/com/songoda/ultimatemoderation/UltimateModeration.java index 058b895..ee4235b 100644 --- a/src/main/java/com/songoda/ultimatemoderation/UltimateModeration.java +++ b/src/main/java/com/songoda/ultimatemoderation/UltimateModeration.java @@ -55,6 +55,7 @@ public class UltimateModeration extends SongodaPlugin { private ModerationManager moderationManager; private DatabaseConnector databaseConnector; + private DataMigrationManager dataMigrationManager; private DataManager dataManager; public static UltimateModeration getInstance() { @@ -109,7 +110,7 @@ public class UltimateModeration extends SongodaPlugin { this.staffChatManager = new StaffChatManager(); this.moderationManager = new ModerationManager(this); - // Database stuff, go! + try { if (Settings.MYSQL_ENABLED.getBoolean()) { String hostname = Settings.MYSQL_HOSTNAME.getString(); @@ -125,15 +126,18 @@ public class UltimateModeration extends SongodaPlugin { this.databaseConnector = new SQLiteConnector(this); this.getLogger().info("Data handler connected using SQLite."); } - } catch (Exception ex) { - this.getLogger().severe("Fatal error trying to connect to database. Please make sure all your connection settings are correct and try again. Plugin has been disabled."); - this.emergencyStop(); - } - this.dataManager = new DataManager(this.databaseConnector, this); - DataMigrationManager dataMigrationManager = new DataMigrationManager(this.databaseConnector, this.dataManager, - new _1_InitialMigration()); - dataMigrationManager.runMigrations(); + this.dataManager = new DataManager(this.databaseConnector, this); + this.dataMigrationManager = new DataMigrationManager(this.databaseConnector, this.dataManager, + new _1_InitialMigration()); + this.dataMigrationManager.runMigrations(); + + } catch (Exception ex) { + this.getLogger().severe("Fatal error trying to connect to database. " + + "Please make sure all your connection settings are correct and try again. Plugin has been disabled."); + emergencyStop(); + return; + } Bukkit.getScheduler().runTaskLaterAsynchronously(this, () -> { // Legacy Data diff --git a/src/main/java/com/songoda/ultimatemoderation/gui/PunishGui.java b/src/main/java/com/songoda/ultimatemoderation/gui/PunishGui.java index 4ec8b78..48b5d1a 100644 --- a/src/main/java/com/songoda/ultimatemoderation/gui/PunishGui.java +++ b/src/main/java/com/songoda/ultimatemoderation/gui/PunishGui.java @@ -284,7 +284,7 @@ public class PunishGui extends Gui { }); ItemStack item = GuiUtils.createButtonItem(CompatibleMaterial.PAPER, - template.getName() == null ? plugin.getLocale().getMessage("gui.general.templatename").getMessage() : template.getName()); + template == null ? plugin.getLocale().getMessage("gui.general.templatename").getMessage() : template.getName()); gui.setInput(item); guiManager.showGUI(player, gui);