PermUserGroupListCommand class

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

Файл: com/hypixel/hytale/server/core/permissions/commands/PermUserCommand.java

extends: CommandBase

Поля (4)

МодификаторыТипИмя
private final RequiredArg<UUID> uuidArg
UUID var2
Message var5
Set var6

Методы (2)

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

Исходный код

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

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.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.AbstractCommandCollection;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import com.hypixel.hytale.server.core.permissions.PermissionsModule;
class="kw">import com.hypixel.hytale.server.core.permissions.provider.PermissionProvider;
class="kw">import com.hypixel.hytale.server.core.util.message.MessageFormat;
class="kw">import java.util.HashSet;
class="kw">import java.util.List;
class="kw">import java.util.Set;
class="kw">import java.util.UUID;
class="kw">import java.util.stream.Collectors;
class="kw">import javax.annotation.Nonnull;

class="kw">public class PermUserCommand class="kw">extends AbstractCommandCollection {
   class="kw">public PermUserCommand() {
      super("user", "server.commands.perm.user.desc");
      this.addSubCommand(new PermUserCommand.PermUserListCommand());
      this.addSubCommand(new PermUserCommand.PermUserAddCommand());
      this.addSubCommand(new PermUserCommand.PermUserRemoveCommand());
      this.addSubCommand(new PermUserCommand.PermUserGroupCommand());
   }

   class="kw">private class="kw">static class PermUserAddCommand class="kw">extends CommandBase {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.add.uuid.desc", ArgTypes.UUID);
      @Nonnull
      class="kw">private class="kw">final RequiredArg<List<String>> permissionsArg = this.withListRequiredArg(
         "permissions", "server.commands.perm.user.add.permissions.desc", ArgTypes.STRING
      );

      class="kw">public PermUserAddCommand() {
         super("add", "server.commands.perm.user.add.desc");
      }

      @Override
      class="kw">protected void executeSync(@Nonnull CommandContext var1) {
         UUID var2 = this.uuidArg.get(var1);
         HashSet var3 = new HashSet<>(this.permissionsArg.get(var1));
         PermissionsModule.get().addUserPermission(var2, var3);
         var1.sendMessage(Message.translation("server.commands.perm.permAddedToUser").param("uuid", var2.toString()));
      }
   }

   class="kw">private class="kw">static class PermUserGroupCommand class="kw">extends AbstractCommandCollection {
      class="kw">public PermUserGroupCommand() {
         super("group", "server.commands.perm.user.group.desc");
         this.addSubCommand(new PermUserCommand.PermUserGroupCommand.PermUserGroupListCommand());
         this.addSubCommand(new PermUserCommand.PermUserGroupCommand.PermUserGroupAddCommand());
         this.addSubCommand(new PermUserCommand.PermUserGroupCommand.PermUserGroupRemoveCommand());
      }

      class="kw">private class="kw">static class PermUserGroupAddCommand class="kw">extends CommandBase {
         @Nonnull
         class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.group.add.uuid.desc", ArgTypes.UUID);
         @Nonnull
         class="kw">private class="kw">final RequiredArg<String> groupArg = this.withRequiredArg("group", "server.commands.perm.user.group.add.group.desc", ArgTypes.STRING);

         class="kw">public PermUserGroupAddCommand() {
            super("add", "server.commands.perm.user.group.add.desc");
         }

         @Override
         class="kw">protected void executeSync(@Nonnull CommandContext var1) {
            UUID var2 = this.uuidArg.get(var1);
            String var3 = this.groupArg.get(var1);
            PermissionsModule.get().addUserToGroup(var2, var3);
            var1.sendMessage(Message.translation("server.commands.perm.userAddedToGroup").param("uuid", var2.toString()).param("group", var3));
         }
      }

      class="kw">private class="kw">static class PermUserGroupListCommand class="kw">extends CommandBase {
         @Nonnull
         class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.group.list.uuid.desc", ArgTypes.UUID);

         class="kw">public PermUserGroupListCommand() {
            super("list", "server.commands.perm.user.group.list.desc");
         }

         @Override
         class="kw">protected void executeSync(@Nonnull CommandContext var1) {
            UUID var2 = this.uuidArg.get(var1);

            for (PermissionProvider var4 : PermissionsModule.get().getProviders()) {
               Message var5 = Message.raw(var4.getName());
               Set var6 = var4.getGroupsForUser(var2).stream().map(Message::raw).collect(Collectors.toSet());
               var1.sendMessage(MessageFormat.list(var5, var6));
            }
         }
      }

      class="kw">private class="kw">static class PermUserGroupRemoveCommand class="kw">extends CommandBase {
         @Nonnull
         class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.group.remove.uuid.desc", ArgTypes.UUID);
         @Nonnull
         class="kw">private class="kw">final RequiredArg<String> groupArg = this.withRequiredArg("group", "server.commands.perm.user.group.remove.group.desc", ArgTypes.STRING);

         class="kw">public PermUserGroupRemoveCommand() {
            super("remove", "server.commands.perm.user.group.remove.desc");
         }

         @Override
         class="kw">protected void executeSync(@Nonnull CommandContext var1) {
            UUID var2 = this.uuidArg.get(var1);
            String var3 = this.groupArg.get(var1);
            PermissionsModule.get().removeUserFromGroup(var2, var3);
            var1.sendMessage(Message.translation("server.commands.perm.userRemovedFromGroup").param("uuid", var2.toString()).param("group", var3));
         }
      }
   }

   class="kw">private class="kw">static class PermUserListCommand class="kw">extends CommandBase {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.list.uuid.desc", ArgTypes.UUID);

      class="kw">public PermUserListCommand() {
         super("list", "server.commands.perm.user.list.desc");
      }

      @Override
      class="kw">protected void executeSync(@Nonnull CommandContext var1) {
         UUID var2 = this.uuidArg.get(var1);

         for (PermissionProvider var4 : PermissionsModule.get().getProviders()) {
            Message var5 = Message.raw(var4.getName());
            Set var6 = var4.getUserPermissions(var2).stream().map(Message::raw).collect(Collectors.toSet());
            var1.sendMessage(MessageFormat.list(var5, var6));
         }
      }
   }

   class="kw">private class="kw">static class PermUserRemoveCommand class="kw">extends CommandBase {
      @Nonnull
      class="kw">private class="kw">final RequiredArg<UUID> uuidArg = this.withRequiredArg("uuid", "server.commands.perm.user.remove.uuid.desc", ArgTypes.UUID);
      @Nonnull
      class="kw">private class="kw">final RequiredArg<List<String>> permissionsArg = this.withListRequiredArg(
         "permissions", "server.commands.perm.user.remove.permissions.desc", ArgTypes.STRING
      );

      class="kw">public PermUserRemoveCommand() {
         super("remove", "server.commands.perm.user.remove.desc");
      }

      @Override
      class="kw">protected void executeSync(@Nonnull CommandContext var1) {
         UUID var2 = this.uuidArg.get(var1);
         HashSet var3 = new HashSet<>(this.permissionsArg.get(var1));
         PermissionsModule.get().removeUserPermission(var2, var3);
         var1.sendMessage(Message.translation("server.commands.perm.permRemovedFromUser").param("uuid", var2.toString()));
      }
   }
}