More improvements to Timings, RCON now is no longer blocking!
Finally made timings accept "Callback style" reports, so plugins can listen for when the report is done. Added new Util interfaces, MessageCommandSender and BufferedCommandSender This restores and improves using RCON to generate timings reports
This commit is contained in:
@@ -5,7 +5,7 @@ Subject: [PATCH] Timings v2
|
||||
|
||||
|
||||
diff --git a/pom.xml b/pom.xml
|
||||
index 0e88ae2a7..31b8401aa 100644
|
||||
index 8b96966d8..8d1e8680b 100644
|
||||
--- a/pom.xml
|
||||
+++ b/pom.xml
|
||||
@@ -0,0 +0,0 @@
|
||||
@@ -493,7 +493,7 @@ index 81fc04ed3..bd3b16025 100644
|
||||
|
||||
private void z() {
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
index 87c07f2be..e18fb875f 100644
|
||||
index daf2c0a67..3ba489d4f 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
@@ -0,0 +0,0 @@ public class ChunkProviderServer implements IChunkProvider {
|
||||
@@ -555,7 +555,7 @@ index a97e7d3c2..4890023d7 100644
|
||||
// return chunk; // CraftBukkit
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
index cb83e4f56..4dab9e962 100644
|
||||
index cb83e4f56..e6819139f 100644
|
||||
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
|
||||
@@ -0,0 +0,0 @@ import java.io.PrintStream;
|
||||
@@ -585,6 +585,28 @@ index cb83e4f56..4dab9e962 100644
|
||||
}
|
||||
|
||||
public boolean aa() {
|
||||
@@ -0,0 +0,0 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
|
||||
return remoteControlCommandListener.getMessages();
|
||||
}
|
||||
};
|
||||
- processQueue.add(waitable);
|
||||
+ // Paper start
|
||||
+ if (s.toLowerCase().startsWith("timings") && s.toLowerCase().matches("timings (report|paste|get|merged|seperate)")) {
|
||||
+ org.bukkit.command.BufferedCommandSender sender = new org.bukkit.command.BufferedCommandSender();
|
||||
+ waitable = new Waitable<String>() {
|
||||
+ @Override
|
||||
+ protected String evaluate() {
|
||||
+ return sender.getBuffer();
|
||||
+ }
|
||||
+ };
|
||||
+ co.aikar.timings.Timings.generateReport(new co.aikar.timings.TimingsReportListener(sender, waitable));
|
||||
+ } else {
|
||||
+ processQueue.add(waitable);
|
||||
+ }
|
||||
+ // Paper end
|
||||
try {
|
||||
return waitable.get();
|
||||
} catch (java.util.concurrent.ExecutionException e) {
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index e7b1ebbe3..05312c6ac 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
|
||||
Reference in New Issue
Block a user