From a5bf6ca9fb5fffe9d96d3ba38b9d79caff52e8f7 Mon Sep 17 00:00:00 2001 From: Bas de Jong Date: Sat, 10 Jan 2026 21:22:15 +0100 Subject: [PATCH] Request admin list --- .../java/org/toop/framework/networking/server/Server.java | 4 ++++ .../framework/networking/server/handlers/MessageHandler.java | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/framework/src/main/java/org/toop/framework/networking/server/Server.java b/framework/src/main/java/org/toop/framework/networking/server/Server.java index a35fe88..0ff3699 100644 --- a/framework/src/main/java/org/toop/framework/networking/server/Server.java +++ b/framework/src/main/java/org/toop/framework/networking/server/Server.java @@ -169,6 +169,10 @@ public class Server implements GameServer { return clientStore.all().stream().toList(); } + public List getAdmins() { + return new ArrayList<>(admins); // Clone so the list can't be edited. + } + @Override public void shutdown() { scheduler.shutdown(); diff --git a/framework/src/main/java/org/toop/framework/networking/server/handlers/MessageHandler.java b/framework/src/main/java/org/toop/framework/networking/server/handlers/MessageHandler.java index 7918323..fd559a9 100644 --- a/framework/src/main/java/org/toop/framework/networking/server/handlers/MessageHandler.java +++ b/framework/src/main/java/org/toop/framework/networking/server/handlers/MessageHandler.java @@ -76,6 +76,10 @@ public class MessageHandler implements Handler { var names = server.gameTypes().stream().iterator(); client.send("SVR GAMELIST " + Utils.returnQuotedString(names)); } + case "admins" -> { + var names = server.getAdmins().stream().map(Client::name).iterator(); + client.send("SVR ADMINS " + Utils.returnQuotedString(names)); + } } }