PluginListCommand class
Пакет: com.hypixel.hytale.server.core.plugin.commands
Файл: com/hypixel/hytale/server/core/plugin/commands/PluginCommand.java
extends: CommandBase
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
PluginManager |
var2 |
|
Set |
var3 |
Методы (2)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
protected void |
executeSyncprotected void executeSync(@Nonnull CommandContext var1) |
abstract |
|
super super("list", "server.commands.plugin.list.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.plugin.commands;
class="kw">import com.hypixel.hytale.common.plugin.PluginIdentifier;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.HytaleServer;
class="kw">import com.hypixel.hytale.server.core.HytaleServerConfig;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.ParseResult;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.FlagArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.system.RequiredArg;
class="kw">import com.hypixel.hytale.server.core.command.system.arguments.types.SingleArgumentType;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractCommandCollection;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.AbstractPlayerCommand;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.plugin.PluginBase;
class="kw">import com.hypixel.hytale.server.core.plugin.PluginManager;
class="kw">import com.hypixel.hytale.server.core.plugin.PluginState;
class="kw">import com.hypixel.hytale.server.core.plugin.pages.PluginListPage;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.core.util.message.MessageFormat;
class="kw">import java.util.Set;
class="kw">import java.util.stream.Collectors;
class="kw">import javax.annotation.Nonnull;
class="kw">public class PluginCommand class="kw">extends AbstractCommandCollection {
@Nonnull
class="kw">private class="kw">static class="kw">final SingleArgumentType<PluginIdentifier> PLUGIN_IDENTIFIER_ARG_TYPE = new SingleArgumentType<PluginIdentifier>(
"server.commands.parsing.argtype.pluginidentifier.name", "server.commands.parsing.argtype.pluginidentifier.usage"
) {
@Nonnull
class="kw">public PluginIdentifier parse(@Nonnull String var1, @Nonnull ParseResult var2) {
try {
class="kw">return PluginIdentifier.fromString(var1);
} catch (Exception var4) {
var2.fail(Message.translation("server.commands.parsing.argtype.pluginidentifier.fail").param("input", var1).param("error", var4.getMessage()));
class="kw">return null;
}
}
};
class="kw">public PluginCommand() {
super("plugin", "server.commands.plugin.desc");
this.addAliases("plugins", "pl");
this.addSubCommand(new PluginCommand.PluginListCommand());
this.addSubCommand(new PluginCommand.PluginLoadCommand());
this.addSubCommand(new PluginCommand.PluginUnloadCommand());
this.addSubCommand(new PluginCommand.PluginReloadCommand());
this.addSubCommand(new PluginCommand.PluginManageCommand());
}
class="kw">private class="kw">static class PluginListCommand class="kw">extends CommandBase {
class="kw">public PluginListCommand() {
super("list", "server.commands.plugin.list.desc");
this.addAliases("ls");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
PluginManager var2 = PluginManager.get();
Set var3 = var2.getPlugins().stream().map(PluginBase::getIdentifier).map(PluginIdentifier::toString).map(Message::raw).collect(Collectors.toSet());
var1.sendMessage(MessageFormat.list(Message.translation("server.commands.plugin.plugins"), var3));
}
}
class="kw">private class="kw">static class PluginLoadCommand class="kw">extends CommandBase {
@Nonnull
class="kw">private class="kw">final RequiredArg<PluginIdentifier> pluginNameArg = this.withRequiredArg(
"pluginName", "server.commands.plugin.load.pluginName.desc", PluginCommand.PLUGIN_IDENTIFIER_ARG_TYPE
);
@Nonnull
class="kw">private class="kw">final FlagArg bootFlag = this.withFlagArg("boot", "server.commands.plugin.load.boot.desc");
class="kw">public PluginLoadCommand() {
super("load", "server.commands.plugin.load.desc");
this.addAliases("l");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
PluginManager var2 = PluginManager.get();
PluginIdentifier var3 = this.pluginNameArg.get(var1);
PluginBase var4 = var2.getPlugin(var3);
if (var3 != null) {
boolean var5 = this.bootFlag.get(var1);
HytaleServerConfig var6 = HytaleServer.get().getConfig();
HytaleServerConfig.setBoot(var6, var3, true);
if (var6.consumeHasChanged()) {
HytaleServerConfig.save(var6).join();
}
var1.sendMessage(Message.translation("server.commands.plugin.bootListEnabled").param("id", var3.toString()));
if (var5) {
class="kw">return;
}
}
if (var4 != null && var4.getState() != PluginState.DISABLED) {
assert var3 != null;
class="kw">switch (var4.getState()) {
case NONE:
var1.sendMessage(Message.translation("server.commands.plugin.failedToLoadInvalidState").param("id", var3.toString()));
break;
case SETUP:
var1.sendMessage(Message.translation("server.commands.plugin.failedToLoadSetup").param("id", var3.toString()));
break;
case START:
var1.sendMessage(Message.translation("server.commands.plugin.failedToLoadStarted").param("id", var3.toString()));
break;
case ENABLED:
var1.sendMessage(Message.translation("server.commands.plugin.failedToLoadAlreadyEnabled").param("id", var3.toString()));
break;
class="kw">default:
var1.sendMessage(Message.translation("server.commands.plugin.failedPluginState").param("state", var4.getState().toString()));
}
} else {
var1.sendMessage(Message.translation("server.commands.plugin.pluginLoading").param("id", var3.toString()));
if (var2.load(var3)) {
var1.sendMessage(Message.translation("server.commands.plugin.pluginLoaded").param("id", var3.toString()));
} else {
var1.sendMessage(Message.translation("server.commands.plugin.failedToLoadPlugin").param("id", var3.toString()));
}
}
}
}
class="kw">private class="kw">static class PluginManageCommand class="kw">extends AbstractPlayerCommand {
class="kw">public PluginManageCommand() {
super("manage", "server.commands.plugin.manage.desc");
this.addAliases("m");
}
@Override
class="kw">protected void execute(
@Nonnull CommandContext var1, @Nonnull Store<EntityStore> var2, @Nonnull Ref<EntityStore> var3, @Nonnull PlayerRef var4, @Nonnull World var5
) {
Player var6 = var2.getComponent(var3, Player.getComponentType());
assert var6 != null;
var6.getPageManager().openCustomPage(var3, var2, new PluginListPage(var4));
}
}
class="kw">private class="kw">static class PluginReloadCommand class="kw">extends CommandBase {
@Nonnull
class="kw">private class="kw">final RequiredArg<PluginIdentifier> pluginNameArg = this.withRequiredArg(
"pluginName", "server.commands.plugin.reload.pluginName.desc", PluginCommand.PLUGIN_IDENTIFIER_ARG_TYPE
);
class="kw">public PluginReloadCommand() {
super("reload", "server.commands.plugin.reload.desc");
this.addAliases("r");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
PluginManager var2 = PluginManager.get();
PluginIdentifier var3 = this.pluginNameArg.get(var1);
PluginBase var4 = var2.getPlugin(var3);
if (var4 != null) {
class="kw">switch (var4.getState()) {
case NONE:
var1.sendMessage(Message.translation("server.commands.plugin.failedToReloadState").param("id", var3.toString()));
break;
case SETUP:
var1.sendMessage(Message.translation("server.commands.plugin.failedToReloadSetup").param("id", var3.toString()));
break;
case START:
var1.sendMessage(Message.translation("server.commands.plugin.failedToReloadStarted").param("id", var3.toString()));
break;
case ENABLED:
if (var2.reload(var3)) {
var1.sendMessage(Message.translation("server.commands.plugin.pluginReloaded").param("id", var3.toString()));
} else {
var1.sendMessage(Message.translation("server.commands.plugin.failedToReload").param("id", var3.toString()));
}
break;
case DISABLED:
var1.sendMessage(Message.translation("server.commands.plugin.failedToReloadDisabled").param("id", var3.toString()));
break;
class="kw">default:
var1.sendMessage(Message.translation("server.commands.plugin.failedPluginState").param("state", var4.getState().toString()));
}
} else {
var1.sendMessage(Message.translation("server.commands.plugin.notLoaded").param("id", var3.toString()));
}
}
}
class="kw">private class="kw">static class PluginUnloadCommand class="kw">extends CommandBase {
@Nonnull
class="kw">private class="kw">final RequiredArg<PluginIdentifier> pluginNameArg = this.withRequiredArg(
"pluginName", "server.commands.plugin.unload.pluginName.desc", PluginCommand.PLUGIN_IDENTIFIER_ARG_TYPE
);
@Nonnull
class="kw">private class="kw">final FlagArg bootFlag = this.withFlagArg("boot", "server.commands.plugin.unload.boot.desc");
class="kw">public PluginUnloadCommand() {
super("unload", "server.commands.plugin.unload.desc");
this.addAliases("u");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
PluginManager var2 = PluginManager.get();
PluginIdentifier var3 = this.pluginNameArg.get(var1);
PluginBase var4 = var2.getPlugin(var3);
if (var3 != null) {
boolean var5 = this.bootFlag.get(var1);
HytaleServerConfig var6 = HytaleServer.get().getConfig();
HytaleServerConfig.setBoot(var6, var3, false);
if (var6.consumeHasChanged()) {
HytaleServerConfig.save(var6).join();
}
var1.sendMessage(Message.translation("server.commands.plugin.bootListDisabled").param("id", var3.toString()));
if (var5) {
class="kw">return;
}
}
if (var4 != null) {
class="kw">switch (var4.getState()) {
case NONE:
var1.sendMessage(Message.translation("server.commands.plugin.failedToUnloadState").param("id", var3.toString()));
break;
case SETUP:
var1.sendMessage(Message.translation("server.commands.plugin.failedToUnloadSetup").param("id", var3.toString()));
break;
case START:
var1.sendMessage(Message.translation("server.commands.plugin.failedToUnloadStarted").param("id", var3.toString()));
break;
case ENABLED:
var1.sendMessage(Message.translation("server.commands.plugin.pluginUnloading").param("id", var3.toString()));
if (var2.unload(var3)) {
var1.sendMessage(Message.translation("server.commands.plugin.pluginUnloaded").param("id", var3.toString()));
} else {
var1.sendMessage(Message.translation("server.commands.plugin.failedToUnload").param("id", var3.toString()));
}
break;
case DISABLED:
var1.sendMessage(Message.translation("server.commands.plugin.failedToUnloadDisabled").param("id", var3.toString()));
break;
class="kw">default:
var1.sendMessage(Message.translation("server.commands.plugin.failedPluginState").param("state", var4.getState().toString()));
}
} else {
var1.sendMessage(Message.translation("server.commands.plugin.notLoaded").param("id", var3.toString()));
}
}
}
}