From 959c2b860e155f98b3d72407d4ccb3acc3e43c70 Mon Sep 17 00:00:00 2001 From: ajgeiss0702 Date: Sat, 21 Aug 2021 09:43:48 -0700 Subject: [PATCH] allow pausing of all servers --- .../queue/commands/commands/manage/Pause.java | 33 ++++++++++++------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/common/src/main/java/us/ajg0702/queue/commands/commands/manage/Pause.java b/common/src/main/java/us/ajg0702/queue/commands/commands/manage/Pause.java index a165642..05e28c0 100644 --- a/common/src/main/java/us/ajg0702/queue/commands/commands/manage/Pause.java +++ b/common/src/main/java/us/ajg0702/queue/commands/commands/manage/Pause.java @@ -9,6 +9,7 @@ import us.ajg0702.utils.common.Messages; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; public class Pause extends SubCommand { @@ -47,26 +48,36 @@ public class Pause extends SubCommand { return; } - QueueServer server = main.getQueueManager().findServer(args[0]); - if(server == null) { + List servers; + QueueServer queueServer = main.getQueueManager().findServer(args[0]); + if(queueServer == null && !args[0].equalsIgnoreCase("all")) { sender.sendMessage(getMessages().getComponent("commands.pause.no-server", "SERVER:"+args[1])); return; - } - if(args.length == 1) { - server.setPaused(!server.isPaused()); + } else if(queueServer == null && args[0].equalsIgnoreCase("all")) { + servers = main.getQueueManager().getServers(); } else { - server.setPaused(args[1].equalsIgnoreCase("on") || args[1].equalsIgnoreCase("true")); + servers = Collections.singletonList(queueServer); + } + + for(QueueServer server : servers) { + if(args.length == 1) { + server.setPaused(!server.isPaused()); + } else { + server.setPaused(args[1].equalsIgnoreCase("on") || args[1].equalsIgnoreCase("true")); + } + sender.sendMessage(getMessages().getComponent("commands.pause.success", + "SERVER:"+server.getName(), + "PAUSED:"+getMessages().getString("commands.pause.paused."+server.isPaused()) + )); } - sender.sendMessage(getMessages().getComponent("commands.pause.success", - "SERVER:"+server.getName(), - "PAUSED:"+getMessages().getString("commands.pause.paused."+server.isPaused()) - )); } @Override public List autoComplete(ICommandSender sender, String[] args) { if(args.length == 1) { - return main.getQueueManager().getServerNames(); + List servers = new ArrayList<>(main.getQueueManager().getServerNames()); + servers.add("all"); + return servers; } if(args.length == 2) { return Arrays.asList("on", "off", "true", "false");