mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-06 02:42:14 +01:00
e886d8118e
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing
87 lines
4.7 KiB
Diff
87 lines
4.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Wed, 2 Dec 2020 20:04:01 -0800
|
|
Subject: [PATCH] Added ServerResourcesReloadedEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/CommandReload.java b/src/main/java/net/minecraft/server/CommandReload.java
|
|
index 08e472b71cf85b854eaa831881577ce2c3c03b11..4558147a51be6713c11bda6a60fd5ca3a953c096 100644
|
|
--- a/src/main/java/net/minecraft/server/CommandReload.java
|
|
+++ b/src/main/java/net/minecraft/server/CommandReload.java
|
|
@@ -6,13 +6,14 @@ import java.util.Collection;
|
|
import java.util.Iterator;
|
|
import org.apache.logging.log4j.LogManager;
|
|
import org.apache.logging.log4j.Logger;
|
|
+import io.papermc.paper.event.server.ServerResourcesReloadedEvent; // Paper
|
|
|
|
public class CommandReload {
|
|
|
|
private static final Logger LOGGER = LogManager.getLogger();
|
|
|
|
public static void a(Collection<String> collection, CommandListenerWrapper commandlistenerwrapper) {
|
|
- commandlistenerwrapper.getServer().a(collection).exceptionally((throwable) -> {
|
|
+ commandlistenerwrapper.getServer().reloadServerResources(collection, ServerResourcesReloadedEvent.Cause.COMMAND).exceptionally((throwable) -> { // Paper
|
|
CommandReload.LOGGER.warn("Failed to execute reload", throwable);
|
|
commandlistenerwrapper.sendFailureMessage(new ChatMessage("commands.reload.failure"));
|
|
return null;
|
|
@@ -42,7 +43,7 @@ public class CommandReload {
|
|
SaveData savedata = minecraftserver.getSaveData();
|
|
Collection<String> collection = resourcepackrepository.d();
|
|
Collection<String> collection1 = a(resourcepackrepository, savedata, collection);
|
|
- minecraftserver.a(collection1);
|
|
+ minecraftserver.reloadServerResources(collection1, ServerResourcesReloadedEvent.Cause.PLUGIN); // Paper
|
|
}
|
|
// CraftBukkit end
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
index 242b2924c4b0b163b010a9d771130a6b15160e4c..8c384171ca56a0989ffef1813ad0a9ee3ea31d29 100644
|
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
|
@@ -2,9 +2,6 @@ package net.minecraft.server;
|
|
|
|
import com.google.common.base.Splitter;
|
|
import com.google.common.collect.ImmutableList;
|
|
-import co.aikar.timings.Timings;
|
|
-import com.destroystokyo.paper.event.server.PaperServerListPingEvent;
|
|
-import com.google.common.base.Stopwatch;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Maps;
|
|
import com.google.common.collect.Sets;
|
|
@@ -63,13 +60,11 @@ import org.apache.logging.log4j.Logger;
|
|
import com.google.common.collect.ImmutableSet;
|
|
// import jline.console.ConsoleReader; // Paper
|
|
import joptsimple.OptionSet;
|
|
-import org.bukkit.Bukkit;
|
|
-import org.bukkit.craftbukkit.CraftServer;
|
|
-import org.bukkit.craftbukkit.Main;
|
|
import org.bukkit.event.server.ServerLoadEvent;
|
|
// CraftBukkit end
|
|
import co.aikar.timings.MinecraftTimings; // Paper
|
|
import io.papermc.paper.util.PaperJvmChecker; // Paper
|
|
+import io.papermc.paper.event.server.ServerResourcesReloadedEvent; // Paper
|
|
import org.spigotmc.SlackActivityAccountant; // Spigot
|
|
|
|
public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTask> implements IMojangStatistics, ICommandListener, AutoCloseable {
|
|
@@ -1812,7 +1807,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
|
|
return this.customFunctionData;
|
|
}
|
|
|
|
+ // Paper start - add cause
|
|
+ @Deprecated
|
|
public CompletableFuture<Void> a(Collection<String> collection) {
|
|
+ return this.reloadServerResources(collection, ServerResourcesReloadedEvent.Cause.PLUGIN);
|
|
+ }
|
|
+ public CompletableFuture<Void> reloadServerResources(Collection<String> collection, ServerResourcesReloadedEvent.Cause cause) {
|
|
+ // Paper end
|
|
CompletableFuture<Void> completablefuture = CompletableFuture.supplyAsync(() -> {
|
|
Stream<String> stream = collection.stream(); // CraftBukkit - decompile error
|
|
ResourcePackRepository resourcepackrepository = this.resourcePackRepository;
|
|
@@ -1828,6 +1829,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
|
|
this.resourcePackRepository.a(collection);
|
|
this.saveData.a(a(this.resourcePackRepository));
|
|
datapackresources.i();
|
|
+ new ServerResourcesReloadedEvent(cause).callEvent(); // Paper
|
|
if (Thread.currentThread() != this.serverThread) return; // Paper
|
|
//this.getPlayerList().savePlayers(); // Paper - we don't need to do this
|
|
this.getPlayerList().reload();
|