diff --git a/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeePluginManager.java b/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeePluginManager.java index d356b15..ac9095c 100644 --- a/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeePluginManager.java +++ b/Bungee/src/main/java/net/frankheijden/serverutils/bungee/managers/BungeePluginManager.java @@ -145,7 +145,7 @@ public class BungeePluginManager extends AbstractPluginManager checkPluginStates(Collection plugins, boolean enabled) { + protected Optional checkPluginStates(List plugins, boolean enabled) { return Optional.empty(); // Bungee can't differentiate between "loaded" and "enabled" } diff --git a/Common/src/main/java/net/frankheijden/serverutils/common/commands/CommandServerUtils.java b/Common/src/main/java/net/frankheijden/serverutils/common/commands/CommandServerUtils.java index 524feb7..e0723bc 100644 --- a/Common/src/main/java/net/frankheijden/serverutils/common/commands/CommandServerUtils.java +++ b/Common/src/main/java/net/frankheijden/serverutils/common/commands/CommandServerUtils.java @@ -7,12 +7,9 @@ import cloud.commandframework.context.CommandContext; import java.io.File; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.Collections; import java.util.Comparator; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.Optional; import java.util.function.Consumer; import java.util.function.Function; @@ -205,7 +202,7 @@ public abstract class CommandServerUtils context) { C sender = context.getSender(); - List

plugins = new ArrayList<>(Arrays.asList(context.get("plugins"))); + List

plugins = Arrays.asList(context.get("plugins")); if (checkProtectedPlugins(sender, plugins)) { return; @@ -213,7 +210,7 @@ public abstract class CommandServerUtils dependingPlugins = getDependingPlugins(context, sender, plugins, "unloadplugin"); + List

dependingPlugins = getDependingPlugins(context, sender, plugins, "unloadplugin"); if (!recursive) { if (!dependingPlugins.isEmpty()) return; } else { @@ -243,7 +240,7 @@ public abstract class CommandServerUtils dependingPlugins = getDependingPlugins(context, sender, plugins, "reloadplugin"); + List

dependingPlugins = getDependingPlugins(context, sender, plugins, "reloadplugin"); if (!recursive && !dependingPlugins.isEmpty()) { return; } @@ -300,16 +297,15 @@ public abstract class CommandServerUtils getDependingPlugins(CommandContext context, C sender, List

plugins, - String subcommand) { - if (context.flags().contains("force")) return Collections.emptySet(); + protected List

getDependingPlugins(CommandContext context, C sender, List

plugins, String subcommand) { + if (context.flags().contains("force")) return Collections.emptyList(); boolean recursive = context.flags().contains("recursive"); AbstractPluginManager pluginManager = plugin.getPluginManager(); MessagesResource messages = plugin.getMessagesResource(); - Map dependingPluginsAll = new HashMap<>(); + List

dependingPluginsAll = new ArrayList<>(); boolean hasDependingPlugins = false; for (P plugin : plugins) { String pluginId = pluginManager.getPluginId(plugin); @@ -332,9 +328,7 @@ public abstract class CommandServerUtils context, C sender, List

plugins) { diff --git a/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractPluginManager.java b/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractPluginManager.java index 8bb374a..bbdd06a 100644 --- a/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractPluginManager.java +++ b/Common/src/main/java/net/frankheijden/serverutils/common/managers/AbstractPluginManager.java @@ -39,7 +39,7 @@ public abstract class AbstractPluginManager loadPlugins(List files) { - Set descriptions = new HashSet<>(files.size()); + List descriptions = new ArrayList<>(files.size()); for (File file : files) { D description; @@ -117,7 +117,7 @@ public abstract class AbstractPluginManager checkPluginStates(Collection

plugins, boolean enabled) { + protected Optional

checkPluginStates(List

plugins, boolean enabled) { for (P plugin : plugins) { if (isPluginEnabled(plugin) != enabled) { return Optional.of(plugin); @@ -142,7 +142,7 @@ public abstract class AbstractPluginManager disablePlugins(Collection

plugins) { + public PluginResults

disablePlugins(List

plugins) { Optional

pluginOptional = checkPluginStates(plugins, true); if (pluginOptional.isPresent()) { return new PluginResults

().addResult(getPluginId(pluginOptional.get()), Result.ALREADY_DISABLED); @@ -235,7 +235,7 @@ public abstract class AbstractPluginManager unloadPlugins(Collection

plugins) { + public CloseablePluginResults

unloadPlugins(List

plugins) { List

orderedPlugins; try { orderedPlugins = determineLoadOrder(plugins); @@ -259,7 +259,7 @@ public abstract class AbstractPluginManager determineLoadOrder(Collection

plugins) throws IllegalStateException { + public List

determineLoadOrder(List

plugins) throws IllegalStateException { Map descriptionMap = new HashMap<>(plugins.size()); for (P plugin : plugins) { descriptionMap.put(getLoadedPluginDescription(plugin), plugin); @@ -276,7 +276,7 @@ public abstract class AbstractPluginManager determineLoadOrder(Set descriptions) throws IllegalStateException { + public List determineLoadOrder(Collection descriptions) throws IllegalStateException { Map pluginIdToDescriptionMap = new HashMap<>(); for (D description : descriptions) { pluginIdToDescriptionMap.put(description.getId(), description);