Implement ability to disable/enable plugins

This commit is contained in:
Frank van der Heijden 2020-06-11 12:20:57 +02:00
parent 0132c06483
commit 9097b06ed5
No known key found for this signature in database
GPG key ID: 26DA56488D314D11
6 changed files with 129 additions and 16 deletions

View file

@ -121,10 +121,16 @@ public class CommandServerUtils extends BaseCommand {
@Subcommand("unloadplugin")
@CommandCompletion("@plugins")
@CommandPermission("serverutils.unloadplugin")
@Description("Unloads the specified plugin.")
@Description("Disables and unloads the specified plugin.")
public void onUnloadPlugin(CommandSender sender, String pluginName) {
Result result = PluginManager.disablePlugin(pluginName);
result.sendTo(sender, "unload", pluginName);
Result disableResult = PluginManager.disablePlugin(pluginName);
if (disableResult != Result.SUCCESS && disableResult != Result.ALREADY_DISABLED) {
disableResult.sendTo(sender, "disabl", pluginName);
return;
}
Result unloadResult = PluginManager.unloadPlugin(pluginName);
unloadResult.sendTo(sender, "unload", pluginName);
}
@Subcommand("reloadplugin")
@ -136,6 +142,24 @@ public class CommandServerUtils extends BaseCommand {
result.sendTo(sender, "reload", pluginName);
}
@Subcommand("enableplugin")
@CommandCompletion("@plugins")
@CommandPermission("serverutils.enableplugin")
@Description("Enables the loaded plugin.")
public void onEnablePlugin(CommandSender sender, String pluginName) {
Result result = PluginManager.enablePlugin(pluginName);
result.sendTo(sender, "enabl", pluginName);
}
@Subcommand("disableplugin")
@CommandCompletion("@plugins")
@CommandPermission("serverutils.disableplugin")
@Description("Disables the specified plugin.")
public void onDisablePlugin(CommandSender sender, String pluginName) {
Result result = PluginManager.disablePlugin(pluginName);
result.sendTo(sender, "disabl", pluginName);
}
@Subcommand("plugininfo")
@CommandCompletion("@plugins")
@CommandPermission("serverutils.plugininfo")