aboutsummaryrefslogtreecommitdiff
path: root/mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java
diff options
context:
space:
mode:
Diffstat (limited to 'mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java')
-rw-r--r--mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java b/mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java
new file mode 100644
index 0000000..f522884
--- /dev/null
+++ b/mod/src/main/java/moe/ymc/acron/MinecraftServerHolder.java
@@ -0,0 +1,28 @@
+package moe.ymc.acron;
+
+import net.minecraft.server.dedicated.MinecraftDedicatedServer;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.jetbrains.annotations.NotNull;
+
+public class MinecraftServerHolder {
+ private static final Logger LOGGER = LogManager.getLogger();
+ public static MinecraftDedicatedServer server;
+
+ public static void setServer(@NotNull MinecraftDedicatedServer server) {
+ if (MinecraftServerHolder.server != null) {
+ throw new IllegalStateException();
+ }
+ LOGGER.debug("Got MinecraftDedicatedServer on thread {}.",
+ Thread.currentThread().getName());
+ MinecraftServerHolder.server = server;
+ }
+
+ public static @NotNull MinecraftDedicatedServer getServer() {
+ if (server == null) {
+ throw new IllegalStateException(String.format("[%s] getServer() called before a server is ready.",
+ Thread.currentThread().getName()));
+ }
+ return server;
+ }
+}