From d83655f2d37b247505d12f501e1f26db06388627 Mon Sep 17 00:00:00 2001 From: "Kristian S. Stangeland" Date: Sat, 7 Dec 2013 00:47:13 +0100 Subject: [PATCH] Add the ability to print out every packet listener. --- .../java/com/comphenix/protocol/CommandProtocol.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/ProtocolLib/src/main/java/com/comphenix/protocol/CommandProtocol.java b/ProtocolLib/src/main/java/com/comphenix/protocol/CommandProtocol.java index 04484391..608f27d2 100644 --- a/ProtocolLib/src/main/java/com/comphenix/protocol/CommandProtocol.java +++ b/ProtocolLib/src/main/java/com/comphenix/protocol/CommandProtocol.java @@ -24,6 +24,7 @@ import org.bukkit.command.CommandSender; import org.bukkit.plugin.Plugin; import com.comphenix.protocol.error.ErrorReporter; +import com.comphenix.protocol.events.PacketListener; import com.comphenix.protocol.metrics.Updater; import com.comphenix.protocol.metrics.Updater.UpdateType; import com.comphenix.protocol.timing.TimedListenerManager; @@ -64,6 +65,8 @@ class CommandProtocol extends CommandBase { updateVersion(sender); else if (subCommand.equalsIgnoreCase("timings")) toggleTimings(sender, args); + else if (subCommand.equalsIgnoreCase("listeners")) + printListeners(sender, args); else return false; return true; @@ -77,6 +80,14 @@ class CommandProtocol extends CommandBase { performUpdate(sender, UpdateType.DEFAULT); } + // Display every listener on the server + private void printListeners(final CommandSender sender, String[] args) { + for (PacketListener listener : ProtocolLibrary.getProtocolManager().getPacketListeners()) { + sender.sendMessage(ChatColor.GOLD + "Packet listeners:"); + sender.sendMessage(ChatColor.GOLD + " " + listener); + } + } + private void performUpdate(final CommandSender sender, UpdateType type) { if (updater.isChecking()) { sender.sendMessage(ChatColor.RED + "Already checking for an update.");