private Map<String, Integer> getPluginUsers() { Map<String, Integer> users = new HashMap<>(); for (PacketListener listener : ProtocolLibrary.getProtocolManager().getPacketListeners()) { String name = PacketAdapter.getPluginName(listener); // Increment occurence if (!users.containsKey(name)) { users.put(name, 1); } else { users.put(name, users.get(name) + 1); } } return users; } }
pw.println(); Set<PacketListener> listeners = manager.getPacketListeners(); Set<Plugin> plugins = new HashSet<>();
@Override public Collection<Plugin> getListening(PacketType packetType) { Set<Plugin> plugins = new HashSet<Plugin>(); // Obtain all plugins that have a listener (ignore monitors) boolean outGoing = packetType.isOutGoing(); com.comphenix.protocol.PacketType comType = getPacketType(packetType); for (com.comphenix.protocol.events.PacketListener listener : ProtocolLibrary.getProtocolManager().getPacketListeners()) { final ListeningWhitelist whitelist; if (outGoing) { whitelist = listener.getSendingWhitelist(); } else { whitelist = listener.getReceivingWhitelist(); } if (whitelist.getPriority() != ListenerPriority.MONITOR && whitelist.getTypes().contains(comType)) { plugins.add(listener.getPlugin()); } } return plugins; }
private void printListeners(final CommandSender sender) { ProtocolManager manager = ProtocolLibrary.getProtocolManager(); sender.sendMessage(ChatColor.GOLD + "Packet listeners:"); for (PacketListener listener : manager.getPacketListeners()) { sender.sendMessage(ChatColor.GOLD + " - " + listener); } // Along with every asynchronous listener sender.sendMessage(ChatColor.GOLD + "Asynchronous listeners:"); for (PacketListener listener : manager.getAsynchronousManager().getAsyncHandlers()) { sender.sendMessage(ChatColor.GOLD + " - " + listener); } }