SetPersistenceVariant class

Пакет: com.hypixel.hytale.server.core.command.commands.server.auth

Файл: com/hypixel/hytale/server/core/command/commands/server/auth/AuthPersistenceCommand.java

extends: CommandBase

Поля (4)

МодификаторыТипИмя
private final RequiredArg<String> typeArg
ServerAuthManager var2
String var3
AuthCredentialStoreProvider var4

Методы (2)

МодификаторыВозвратСигнатура
protected void executeSyncprotected void executeSync(@Nonnull CommandContext var1)
abstract super super("server.commands.auth.persistence.variant.desc")

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.server.auth;

class="kw">import com.hypixel.hytale.server.core.HytaleServer;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.auth.AuthCredentialStoreProvider;
class="kw">import com.hypixel.hytale.server.core.auth.ServerAuthManager;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
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.ArgTypes;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import java.awt.Color;
class="kw">import javax.annotation.Nonnull;

class="kw">public class AuthPersistenceCommand class="kw">extends CommandBase {
   @Nonnull
   class="kw">private class="kw">static class="kw">final Message MESSAGE_SINGLEPLAYER = Message.translation("server.commands.auth.persistence.singleplayer").color(Color.RED);

   class="kw">public AuthPersistenceCommand() {
      super("persistence", "server.commands.auth.persistence.desc");
      this.addUsageVariant(new AuthPersistenceCommand.SetPersistenceVariant());
   }

   @Override
   class="kw">protected void executeSync(@Nonnull CommandContext var1) {
      if (ServerAuthManager.getInstance().isSingleplayer()) {
         var1.sendMessage(MESSAGE_SINGLEPLAYER);
      } else {
         AuthCredentialStoreProvider var2 = HytaleServer.get().getConfig().getAuthCredentialStoreProvider();
         String var3 = AuthCredentialStoreProvider.CODEC.getIdFor((Class<? class="kw">extends AuthCredentialStoreProvider>)var2.getClass());
         var1.sendMessage(Message.translation("server.commands.auth.persistence.current").color(Color.YELLOW).param("type", var3));
         String var4 = String.join(", ", AuthCredentialStoreProvider.CODEC.getRegisteredIds());
         var1.sendMessage(Message.translation("server.commands.auth.persistence.available").color(Color.GRAY).param("types", var4));
      }
   }

   class="kw">private class="kw">static class SetPersistenceVariant class="kw">extends CommandBase {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<String> typeArg = this.withRequiredArg("type", "server.commands.auth.persistence.type.desc", ArgTypes.AUTH_STORE_PROVIDER_KEY);

      SetPersistenceVariant() {
         super("server.commands.auth.persistence.variant.desc");
      }

      @Override
      class="kw">protected void executeSync(@Nonnull CommandContext var1) {
         ServerAuthManager var2 = ServerAuthManager.getInstance();
         if (var2.isSingleplayer()) {
            var1.sendMessage(AuthPersistenceCommand.MESSAGE_SINGLEPLAYER);
         } else {
            String var3 = this.typeArg.get(var1);
            AuthCredentialStoreProvider var4 = AuthCredentialStoreProvider.CODEC.getCodecFor(var3).getDefaultValue();
            HytaleServer.get().getConfig().setAuthCredentialStoreProvider(var4);
            var2.swapCredentialStoreProvider(var4);
            var1.sendMessage(Message.translation("server.commands.auth.persistence.changed").color(Color.GREEN).param("type", var3));
         }
      }
   }
}