diff --git a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/chatlog/ChatLog.java b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/chatlog/ChatLog.java index 8a4be8dc..4e369d62 100644 --- a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/chatlog/ChatLog.java +++ b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/chatlog/ChatLog.java @@ -56,7 +56,9 @@ public void initialize() { getLifecycleManager().getDataManager().registerConnection("ormConnection", DatabaseType.MYSQL, "player_data_rw"); ormContext = getLifecycleManager().getDataManager().createORMContext("ormConnection", ChatMessageEntity.class, - ReportedChatMessageEntity.class).orElseThrow(); + ReportedChatMessageEntity.class).orElseThrow(() -> new IllegalStateException( + "ChatLog requires the MYSQL/player_data_rw connection and could not create its ORM context." + )); reportHandler = new ReportHandler(this); getLifecycleManager().getListenerManager().registerListener(new ChatListener(this)); diff --git a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/commandlogger/CommandLogger.java b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/commandlogger/CommandLogger.java index fa2aea65..d1aabdb8 100644 --- a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/commandlogger/CommandLogger.java +++ b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/commandlogger/CommandLogger.java @@ -42,7 +42,9 @@ public void initialize() { ormContext = getLifecycleManager().getDataManager().createORMContext( "ormConnection", CommandExecutionEntity.class - ).orElseThrow(); + ).orElseThrow(() -> new IllegalStateException( + "CommandLogger requires the MYSQL/player_data_rw connection and could not create its ORM context." + )); this.commandLogService = new CommandLogService(this); @@ -61,5 +63,4 @@ public ORMContext getOrmContext() { public CommandLogService getCommandLogService() { return commandLogService; } - } diff --git a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/glow/Glow.java b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/glow/Glow.java index 3dd763aa..8afcaf1f 100644 --- a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/glow/Glow.java +++ b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/glow/Glow.java @@ -70,7 +70,9 @@ public void initialize() { ormContext = getLifecycleManager().getDataManager().createORMContext( "glowOrmConnection", PlayerGlowStateEntity.class - ).orElseThrow(); + ).orElseThrow(() -> new IllegalStateException( + "Glow requires the MYSQL/player_data_rw connection and could not create its ORM context." + )); this.registry = new GlowRegistry(); this.glowHandler = new GlowHandler(this); diff --git a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/nametags/Nametags.java b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/nametags/Nametags.java index 4fd98843..aa123f12 100644 --- a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/nametags/Nametags.java +++ b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/nametags/Nametags.java @@ -66,7 +66,9 @@ public void initialize() { getLifecycleManager().getDataManager().registerConnection("ormConnection", DatabaseType.MYSQL, "player_data_rw"); this.ormContext = getLifecycleManager().getDataManager() .createORMContext("ormConnection", PlayerNametagEntity.class) - .orElseThrow(); + .orElseThrow(() -> new IllegalStateException( + "Nametags requires the MYSQL/player_data_rw connection and could not create its ORM context." + )); this.repository = new NametagDBService(this); // Runtime manager @@ -84,7 +86,9 @@ public void initialize() { @Override public void disable() { - this.nametagManager.removeAllNametags(); + if (this.nametagManager != null) { + this.nametagManager.removeAllNametags(); + } } public NametagManager getNametagManager() { diff --git a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/sanctions/Sanctions.java b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/sanctions/Sanctions.java index 5b21e307..acc92559 100644 --- a/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/sanctions/Sanctions.java +++ b/serverfeatures-platform-paper/src/main/java/nl/hauntedmc/serverfeatures/features/sanctions/Sanctions.java @@ -49,9 +49,10 @@ public void initialize() { getLifecycleManager().getDataManager().registerConnection( "orm", DatabaseType.MYSQL, "player_data_rw"); orm = getLifecycleManager().getDataManager() - .createORMContext("orm", - SanctionEntity.class) - .orElseThrow(); + .createORMContext("orm", SanctionEntity.class) + .orElseThrow(() -> new IllegalStateException( + "Sanctions requires the MYSQL/player_data_rw connection and could not create its ORM context." + )); this.service = new SanctionsDataService(this); this.muteRegistry = new MuteRegistry(service); @@ -94,5 +95,4 @@ public ORMContext getOrm() { public SanctionsDataService getService() { return service; } - }