Make command defintion/usage messages translatable
This commit is contained in:
@@ -57,8 +57,9 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Constants;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.TextUtils;
|
||||
|
||||
@@ -92,31 +93,33 @@ public class CommandManager {
|
||||
this.plugin = plugin;
|
||||
this.executor = Executors.newSingleThreadExecutor();
|
||||
|
||||
LocaleManager locale = plugin.getLocaleManager();
|
||||
|
||||
mainCommands = ImmutableList.<Command>builder()
|
||||
.add(new UserMainCommand())
|
||||
.add(new GroupMainCommand())
|
||||
.add(new TrackMainCommand())
|
||||
.add(new UserMainCommand(locale))
|
||||
.add(new GroupMainCommand(locale))
|
||||
.add(new TrackMainCommand(locale))
|
||||
.addAll(plugin.getExtraCommands())
|
||||
.add(new LogMainCommand())
|
||||
.add(new SyncCommand())
|
||||
.add(new InfoCommand())
|
||||
.add(new VerboseCommand())
|
||||
.add(new TreeCommand())
|
||||
.add(new SearchCommand())
|
||||
.add(new CheckCommand())
|
||||
.add(new NetworkSyncCommand())
|
||||
.add(new ImportCommand())
|
||||
.add(new ExportCommand())
|
||||
.add(new ReloadConfigCommand())
|
||||
.add(new BulkUpdateCommand())
|
||||
.add(new MigrationMainCommand())
|
||||
.add(new ApplyEditsCommand())
|
||||
.add(new CreateGroup())
|
||||
.add(new DeleteGroup())
|
||||
.add(new ListGroups())
|
||||
.add(new CreateTrack())
|
||||
.add(new DeleteTrack())
|
||||
.add(new ListTracks())
|
||||
.add(new LogMainCommand(locale))
|
||||
.add(new SyncCommand(locale))
|
||||
.add(new InfoCommand(locale))
|
||||
.add(new VerboseCommand(locale))
|
||||
.add(new TreeCommand(locale))
|
||||
.add(new SearchCommand(locale))
|
||||
.add(new CheckCommand(locale))
|
||||
.add(new NetworkSyncCommand(locale))
|
||||
.add(new ImportCommand(locale))
|
||||
.add(new ExportCommand(locale))
|
||||
.add(new ReloadConfigCommand(locale))
|
||||
.add(new BulkUpdateCommand(locale))
|
||||
.add(new MigrationMainCommand(locale))
|
||||
.add(new ApplyEditsCommand(locale))
|
||||
.add(new CreateGroup(locale))
|
||||
.add(new DeleteGroup(locale))
|
||||
.add(new ListGroups(locale))
|
||||
.add(new CreateTrack(locale))
|
||||
.add(new DeleteTrack(locale))
|
||||
.add(new ListTracks(locale))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.Collections;
|
||||
@@ -49,18 +50,15 @@ import java.util.function.Predicate;
|
||||
*/
|
||||
public abstract class Command<T, S> {
|
||||
|
||||
@Getter
|
||||
private final LocalizedSpec spec;
|
||||
|
||||
/**
|
||||
* The name of the command. Should be properly capitalised.
|
||||
*/
|
||||
@Getter
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* A brief description of this command
|
||||
*/
|
||||
@Getter
|
||||
private final String description;
|
||||
|
||||
/**
|
||||
* The permission required to use this command. Nullable.
|
||||
*/
|
||||
@@ -72,32 +70,25 @@ public abstract class Command<T, S> {
|
||||
@Getter
|
||||
private final Predicate<Integer> argumentCheck;
|
||||
|
||||
/**
|
||||
* A list of arguments required for the command. These are just here for informational purposes, and aren't used
|
||||
* for argument validation.
|
||||
*/
|
||||
private final List<Arg> args;
|
||||
|
||||
/**
|
||||
* Child commands. Nullable.
|
||||
*/
|
||||
private final List<Command<S, ?>> children;
|
||||
|
||||
public Command(String name, String description, Permission permission, Predicate<Integer> argumentCheck, List<Arg> args, List<Command<S, ?>> children) {
|
||||
public Command(LocalizedSpec spec, String name, Permission permission, Predicate<Integer> argumentCheck, List<Command<S, ?>> children) {
|
||||
this.spec = spec;
|
||||
this.name = name;
|
||||
this.description = description;
|
||||
this.permission = permission;
|
||||
this.argumentCheck = argumentCheck;
|
||||
this.args = args == null ? null : ImmutableList.copyOf(args);
|
||||
this.children = children == null ? null : ImmutableList.copyOf(children);
|
||||
}
|
||||
|
||||
public Command(String name, String description, Permission permission, Predicate<Integer> argumentCheck, List<Arg> args) {
|
||||
this(name, description, permission, argumentCheck, args, null);
|
||||
public Command(LocalizedSpec spec, String name, Permission permission, Predicate<Integer> argumentCheck) {
|
||||
this(spec, name, permission, argumentCheck, null);
|
||||
}
|
||||
|
||||
public Command(String name, String description, Predicate<Integer> argumentCheck) {
|
||||
this(name, description, null, argumentCheck, null, null);
|
||||
public Command(LocalizedSpec spec, String name, Predicate<Integer> argumentCheck) {
|
||||
this(spec, name, null, argumentCheck, null);
|
||||
}
|
||||
|
||||
public abstract CommandResult execute(LuckPermsPlugin plugin, Sender sender, T t, List<String> args, String label) throws CommandException;
|
||||
@@ -147,13 +138,18 @@ public abstract class Command<T, S> {
|
||||
return true;
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return spec.description();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the usage of this command. Will only return a non empty result for main commands.
|
||||
*
|
||||
* @return the usage of this command.
|
||||
*/
|
||||
public String getUsage() {
|
||||
return "";
|
||||
String usage = spec.usage();
|
||||
return usage == null ? "" : usage;
|
||||
}
|
||||
|
||||
public Optional<Permission> getPermission() {
|
||||
@@ -161,7 +157,7 @@ public abstract class Command<T, S> {
|
||||
}
|
||||
|
||||
public Optional<List<Arg>> getArgs() {
|
||||
return Optional.ofNullable(args);
|
||||
return Optional.ofNullable(spec.args());
|
||||
}
|
||||
|
||||
public Optional<List<Command<S, ?>>> getChildren() {
|
||||
|
||||
+5
-9
@@ -25,14 +25,13 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.abstraction;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandManager;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,13 +43,10 @@ import java.util.stream.Collectors;
|
||||
|
||||
public abstract class MainCommand<T> extends Command<Void, T> {
|
||||
|
||||
@Getter
|
||||
private final String usage;
|
||||
private final int minArgs; // equals 1 if the command doesn't take a mid argument, e.g. /lp user <USER> sub-command....
|
||||
|
||||
public MainCommand(String name, String description, String usage, int minArgs, List<Command<T, ?>> children) {
|
||||
super(name, description, null, Predicates.alwaysFalse(), null, children);
|
||||
this.usage = usage;
|
||||
public MainCommand(LocalizedSpec spec, String name, int minArgs, List<Command<T, ?>> children) {
|
||||
super(spec, name, null, Predicates.alwaysFalse(), children);
|
||||
this.minArgs = minArgs;
|
||||
}
|
||||
|
||||
@@ -160,7 +156,7 @@ public abstract class MainCommand<T> extends Command<Void, T> {
|
||||
.collect(Collectors.toList());
|
||||
|
||||
if (subs.size() > 0) {
|
||||
Util.sendPluginMessage(sender, "&b" + getName() + " Sub Commands: &7(" + String.format(usage, label) + " ...)");
|
||||
Util.sendPluginMessage(sender, "&b" + getName() + " Sub Commands: &7(" + String.format(getUsage(), label) + " ...)");
|
||||
|
||||
for (Command s : subs) {
|
||||
s.sendUsage(sender, label);
|
||||
|
||||
+5
-4
@@ -30,8 +30,9 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -55,8 +56,8 @@ public class SharedMainCommand<T extends PermissionHolder> extends SubCommand<T>
|
||||
*/
|
||||
private boolean user;
|
||||
|
||||
public SharedMainCommand(String name, String description, boolean user, List<SharedSubCommand> secondaryCommands) {
|
||||
super(name, description, null, Predicates.alwaysFalse(), null);
|
||||
public SharedMainCommand(LocalizedSpec spec, String name, boolean user, List<SharedSubCommand> secondaryCommands) {
|
||||
super(spec, name, null, Predicates.alwaysFalse());
|
||||
this.secondaryCommands = secondaryCommands;
|
||||
this.user = user;
|
||||
}
|
||||
@@ -89,7 +90,7 @@ public class SharedMainCommand<T extends PermissionHolder> extends SubCommand<T>
|
||||
strippedArgs.addAll(args.subList(1, args.size()));
|
||||
}
|
||||
|
||||
if (sub.getIsArgumentInvalid().test(strippedArgs.size())) {
|
||||
if (sub.getArgumentCheck().test(strippedArgs.size())) {
|
||||
sub.sendDetailedUsage(sender);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
+24
-15
@@ -25,11 +25,8 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.abstraction;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
@@ -39,6 +36,7 @@ import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.Collections;
|
||||
@@ -50,19 +48,15 @@ import java.util.function.Predicate;
|
||||
* This doesn't extend the other Command or SubCommand classes to avoid generics hell.
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public abstract class SharedSubCommand {
|
||||
|
||||
private final LocalizedSpec spec;
|
||||
|
||||
/**
|
||||
* The name of the sub command
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
/**
|
||||
* A brief description of what the sub command does
|
||||
*/
|
||||
private final String description;
|
||||
|
||||
/**
|
||||
* The permission needed to use this command
|
||||
*/
|
||||
@@ -72,8 +66,15 @@ public abstract class SharedSubCommand {
|
||||
/**
|
||||
* Predicate to test if the argument length given is invalid
|
||||
*/
|
||||
private final Predicate<? super Integer> isArgumentInvalid;
|
||||
private final ImmutableList<Arg> args;
|
||||
private final Predicate<? super Integer> argumentCheck;
|
||||
|
||||
public SharedSubCommand(LocalizedSpec spec, String name, Permission userPermission, Permission groupPermission, Predicate<? super Integer> argumentCheck) {
|
||||
this.spec = spec;
|
||||
this.name = name;
|
||||
this.userPermission = userPermission;
|
||||
this.groupPermission = groupPermission;
|
||||
this.argumentCheck = argumentCheck;
|
||||
}
|
||||
|
||||
public abstract CommandResult execute(LuckPermsPlugin plugin, Sender sender, PermissionHolder holder, List<String> args, String label) throws CommandException;
|
||||
|
||||
@@ -83,9 +84,9 @@ public abstract class SharedSubCommand {
|
||||
|
||||
public void sendUsage(Sender sender) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
if (args != null) {
|
||||
if (getArgs() != null) {
|
||||
sb.append("&3 - &7");
|
||||
for (Arg arg : args) {
|
||||
for (Arg arg : getArgs()) {
|
||||
sb.append(arg.asPrettyString()).append(" ");
|
||||
}
|
||||
}
|
||||
@@ -96,9 +97,9 @@ public abstract class SharedSubCommand {
|
||||
public void sendDetailedUsage(Sender sender) {
|
||||
Util.sendPluginMessage(sender, "&3&lCommand Usage &3- &b" + getName());
|
||||
Util.sendPluginMessage(sender, "&b> &7" + getDescription());
|
||||
if (args != null) {
|
||||
if (getArgs() != null) {
|
||||
Util.sendPluginMessage(sender, "&3Arguments:");
|
||||
for (Arg arg : args) {
|
||||
for (Arg arg : getArgs()) {
|
||||
Util.sendPluginMessage(sender, "&b- " + arg.asPrettyString() + "&3 -> &7" + arg.getDescription());
|
||||
}
|
||||
}
|
||||
@@ -108,6 +109,14 @@ public abstract class SharedSubCommand {
|
||||
return user ? userPermission.isAuthorized(sender) : groupPermission.isAuthorized(sender);
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return spec.description();
|
||||
}
|
||||
|
||||
public List<Arg> getArgs() {
|
||||
return spec.args();
|
||||
}
|
||||
|
||||
public static void save(PermissionHolder holder, Sender sender, LuckPermsPlugin plugin) {
|
||||
if (holder instanceof User) {
|
||||
User user = ((User) holder);
|
||||
|
||||
+3
-8
@@ -25,14 +25,13 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.abstraction;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.List;
|
||||
@@ -43,12 +42,8 @@ import java.util.function.Predicate;
|
||||
*/
|
||||
public abstract class SingleCommand extends Command<Void, Void> {
|
||||
|
||||
@Getter
|
||||
private final String usage;
|
||||
|
||||
public SingleCommand(String name, String description, String usage, Permission permission, Predicate<Integer> argumentCheck, List<Arg> args) {
|
||||
super(name, description, permission, argumentCheck, args, null);
|
||||
this.usage = usage;
|
||||
public SingleCommand(LocalizedSpec spec, String name, Permission permission, Predicate<Integer> argumentCheck) {
|
||||
super(spec, name, permission, argumentCheck, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -33,11 +33,12 @@ import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.LocalizedSpec;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.messaging.InternalMessagingService;
|
||||
import me.lucko.luckperms.common.messaging.NoopMessagingService;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
@@ -58,8 +59,8 @@ import java.util.stream.Collectors;
|
||||
@Getter
|
||||
public abstract class SubCommand<T> extends Command<T, Void> {
|
||||
|
||||
public SubCommand(String name, String description, Permission permission, Predicate<Integer> argumentCheck, List<Arg> args) {
|
||||
super(name, description, permission, argumentCheck, args);
|
||||
public SubCommand(LocalizedSpec spec, String name, Permission permission, Predicate<Integer> argumentCheck) {
|
||||
super(spec, name, permission, argumentCheck);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
+18
-16
@@ -31,24 +31,26 @@ import me.lucko.luckperms.api.ChatMetaType;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedMainCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
|
||||
public class CommandMeta<T extends PermissionHolder> extends SharedMainCommand<T> {
|
||||
public CommandMeta(boolean user) {
|
||||
super("Meta", "Edit metadata values", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new MetaInfo())
|
||||
.add(new MetaSet())
|
||||
.add(new MetaUnset())
|
||||
.add(new MetaSetTemp())
|
||||
.add(new MetaUnsetTemp())
|
||||
.add(new MetaAddChatMeta(ChatMetaType.PREFIX))
|
||||
.add(new MetaAddChatMeta(ChatMetaType.SUFFIX))
|
||||
.add(new MetaRemoveChatMeta(ChatMetaType.PREFIX))
|
||||
.add(new MetaRemoveChatMeta(ChatMetaType.SUFFIX))
|
||||
.add(new MetaAddTempChatMeta(ChatMetaType.PREFIX))
|
||||
.add(new MetaAddTempChatMeta(ChatMetaType.SUFFIX))
|
||||
.add(new MetaRemoveTempChatMeta(ChatMetaType.PREFIX))
|
||||
.add(new MetaRemoveTempChatMeta(ChatMetaType.SUFFIX))
|
||||
.add(new MetaClear())
|
||||
public CommandMeta(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.META.spec(locale), "Meta", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new MetaInfo(locale))
|
||||
.add(new MetaSet(locale))
|
||||
.add(new MetaUnset(locale))
|
||||
.add(new MetaSetTemp(locale))
|
||||
.add(new MetaUnsetTemp(locale))
|
||||
.add(new MetaAddChatMeta(locale, ChatMetaType.PREFIX))
|
||||
.add(new MetaAddChatMeta(locale, ChatMetaType.SUFFIX))
|
||||
.add(new MetaRemoveChatMeta(locale, ChatMetaType.PREFIX))
|
||||
.add(new MetaRemoveChatMeta(locale, ChatMetaType.SUFFIX))
|
||||
.add(new MetaAddTempChatMeta(locale, ChatMetaType.PREFIX))
|
||||
.add(new MetaAddTempChatMeta(locale, ChatMetaType.SUFFIX))
|
||||
.add(new MetaRemoveTempChatMeta(locale, ChatMetaType.PREFIX))
|
||||
.add(new MetaRemoveTempChatMeta(locale, ChatMetaType.SUFFIX))
|
||||
.add(new MetaClear(locale))
|
||||
.build());
|
||||
}
|
||||
}
|
||||
|
||||
+8
-11
@@ -28,18 +28,19 @@ package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
import me.lucko.luckperms.api.ChatMetaType;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -49,17 +50,13 @@ import java.util.stream.Collectors;
|
||||
public class MetaAddChatMeta extends SharedSubCommand {
|
||||
private final ChatMetaType type;
|
||||
|
||||
public MetaAddChatMeta(ChatMetaType type) {
|
||||
super("add" + type.name().toLowerCase(),
|
||||
"Adds a " + type.name().toLowerCase(),
|
||||
public MetaAddChatMeta(LocaleManager locale, ChatMetaType type) {
|
||||
super(
|
||||
type == ChatMetaType.PREFIX ? CommandSpec.META_ADDPREFIX.spec(locale) : CommandSpec.META_ADDSUFFIX.spec(locale),
|
||||
"add" + type.name().toLowerCase(),
|
||||
type == ChatMetaType.PREFIX ? Permission.USER_META_ADDPREFIX : Permission.USER_META_ADDSUFFIX,
|
||||
type == ChatMetaType.PREFIX ? Permission.GROUP_META_ADDPREFIX : Permission.GROUP_META_ADDSUFFIX,
|
||||
Predicates.inRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the " + type.name().toLowerCase() + " at"),
|
||||
Arg.create(type.name().toLowerCase(), true, "the " + type.name().toLowerCase() + " string"),
|
||||
Arg.create("context...", false, "the contexts to add the " + type.name().toLowerCase() + " in")
|
||||
)
|
||||
Predicates.inRange(0, 1)
|
||||
);
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
+8
-12
@@ -29,7 +29,6 @@ import me.lucko.luckperms.api.ChatMetaType;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -37,12 +36,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.TemporaryModifier;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -54,18 +55,13 @@ import java.util.stream.Collectors;
|
||||
public class MetaAddTempChatMeta extends SharedSubCommand {
|
||||
private final ChatMetaType type;
|
||||
|
||||
public MetaAddTempChatMeta(ChatMetaType type) {
|
||||
super("addtemp" + type.name().toLowerCase(),
|
||||
"Adds a " + type.name().toLowerCase() + " temporarily",
|
||||
public MetaAddTempChatMeta(LocaleManager locale, ChatMetaType type) {
|
||||
super(
|
||||
type == ChatMetaType.PREFIX ? CommandSpec.META_ADDTEMP_PREFIX.spec(locale) : CommandSpec.META_ADDTEMP_SUFFIX.spec(locale),
|
||||
"addtemp" + type.name().toLowerCase(),
|
||||
type == ChatMetaType.PREFIX ? Permission.USER_META_ADDTEMP_PREFIX : Permission.USER_META_ADDTEMP_SUFFIX,
|
||||
type == ChatMetaType.PREFIX ? Permission.GROUP_META_ADDTEMP_PREFIX : Permission.GROUP_META_ADDTEMP_SUFFIX,
|
||||
Predicates.inRange(0, 2),
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the " + type.name().toLowerCase() + " at"),
|
||||
Arg.create(type.name().toLowerCase(), true, "the " + type.name().toLowerCase() + " string"),
|
||||
Arg.create("duration", true, "the duration until the " + type.name().toLowerCase() + " expires"),
|
||||
Arg.create("context...", false, "the contexts to add the " + type.name().toLowerCase() + " in")
|
||||
)
|
||||
Predicates.inRange(0, 2)
|
||||
);
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
+5
-8
@@ -26,17 +26,18 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,12 +45,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class MetaClear extends SharedSubCommand {
|
||||
public MetaClear() {
|
||||
super("clear", "Clears all chat meta", Permission.USER_META_CLEAR, Permission.GROUP_META_CLEAR, Predicates.alwaysFalse(),
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
);
|
||||
public MetaClear(LocaleManager locale) {
|
||||
super(CommandSpec.META_CLEAR.spec(locale), "clear", Permission.USER_META_CLEAR, Permission.GROUP_META_CLEAR, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-3
@@ -32,9 +32,11 @@ import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.MetaComparator;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -55,8 +57,8 @@ public class MetaInfo extends SharedSubCommand {
|
||||
return val.replace("&", "{color char}");
|
||||
}
|
||||
|
||||
public MetaInfo() {
|
||||
super("info", "Shows all chat meta", Permission.USER_META_INFO, Permission.GROUP_META_INFO, Predicates.alwaysFalse(), null);
|
||||
public MetaInfo(LocaleManager locale) {
|
||||
super(CommandSpec.META_INFO.spec(locale), "info", Permission.USER_META_INFO, Permission.GROUP_META_INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+8
-11
@@ -28,18 +28,19 @@ package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
import me.lucko.luckperms.api.ChatMetaType;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -49,17 +50,13 @@ import java.util.stream.Collectors;
|
||||
public class MetaRemoveChatMeta extends SharedSubCommand {
|
||||
private final ChatMetaType type;
|
||||
|
||||
public MetaRemoveChatMeta(ChatMetaType type) {
|
||||
super("remove" + type.name().toLowerCase(),
|
||||
"Removes a " + type.name().toLowerCase(),
|
||||
public MetaRemoveChatMeta(LocaleManager locale, ChatMetaType type) {
|
||||
super(
|
||||
type == ChatMetaType.PREFIX ? CommandSpec.META_REMOVEPREFIX.spec(locale) : CommandSpec.META_REMOVESUFFIX.spec(locale),
|
||||
"remove" + type.name().toLowerCase(),
|
||||
type == ChatMetaType.PREFIX ? Permission.USER_META_REMOVEPREFIX : Permission.USER_META_REMOVESUFFIX,
|
||||
type == ChatMetaType.PREFIX ? Permission.GROUP_META_REMOVEPREFIX : Permission.GROUP_META_REMOVESUFFIX,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the " + type.name().toLowerCase() + " at"),
|
||||
Arg.create(type.name().toLowerCase(), false, "the " + type.name().toLowerCase() + " string"),
|
||||
Arg.create("context...", false, "the contexts to remove the " + type.name().toLowerCase() + " in")
|
||||
)
|
||||
Predicates.is(0)
|
||||
);
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
+8
-11
@@ -28,18 +28,19 @@ package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
import me.lucko.luckperms.api.ChatMetaType;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -49,17 +50,13 @@ import java.util.stream.Collectors;
|
||||
public class MetaRemoveTempChatMeta extends SharedSubCommand {
|
||||
private final ChatMetaType type;
|
||||
|
||||
public MetaRemoveTempChatMeta(ChatMetaType type) {
|
||||
super("removetemp" +type.name().toLowerCase(),
|
||||
"Removes a temporary " + type.name().toLowerCase(),
|
||||
public MetaRemoveTempChatMeta(LocaleManager locale, ChatMetaType type) {
|
||||
super(
|
||||
type == ChatMetaType.PREFIX ? CommandSpec.META_REMOVETEMP_PREFIX.spec(locale) : CommandSpec.META_REMOVETEMP_SUFFIX.spec(locale),
|
||||
"removetemp" + type.name().toLowerCase(),
|
||||
type == ChatMetaType.PREFIX ? Permission.USER_META_REMOVETEMP_PREFIX : Permission.USER_META_REMOVETEMP_SUFFIX,
|
||||
type == ChatMetaType.PREFIX ? Permission.GROUP_META_REMOVETEMP_PREFIX : Permission.GROUP_META_REMOVETEMP_SUFFIX,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the " + type.name().toLowerCase() + " at"),
|
||||
Arg.create(type.name().toLowerCase(), false, "the " +type.name().toLowerCase() + " string"),
|
||||
Arg.create("context...", false, "the contexts to remove the " + type.name().toLowerCase() + " in")
|
||||
)
|
||||
Predicates.is(0)
|
||||
);
|
||||
this.type = type;
|
||||
}
|
||||
|
||||
+5
-10
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -46,14 +47,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class MetaSet extends SharedSubCommand {
|
||||
public MetaSet() {
|
||||
super("set", "Sets a meta value", Permission.USER_META_SET, Permission.GROUP_META_SET, Predicates.inRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to set"),
|
||||
Arg.create("value", true, "the value to set"),
|
||||
Arg.create("context...", false, "the contexts to add the meta pair in")
|
||||
)
|
||||
);
|
||||
public MetaSet(LocaleManager locale) {
|
||||
super(CommandSpec.META_SET.spec(locale), "set", Permission.USER_META_SET, Permission.GROUP_META_SET, Predicates.inRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-11
@@ -27,7 +27,6 @@ package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -35,12 +34,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.TemporaryModifier;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -49,15 +50,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class MetaSetTemp extends SharedSubCommand {
|
||||
public MetaSetTemp() {
|
||||
super("settemp", "Sets a meta value temporarily", Permission.USER_META_SETTEMP, Permission.GROUP_META_SETTEMP, Predicates.inRange(0, 2),
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to set"),
|
||||
Arg.create("value", true, "the value to set"),
|
||||
Arg.create("duration", true, "the duration until the meta value expires"),
|
||||
Arg.create("context...", false, "the contexts to add the meta pair in")
|
||||
)
|
||||
);
|
||||
public MetaSetTemp(LocaleManager locale) {
|
||||
super(CommandSpec.META_SETTEMP.spec(locale), "settemp", Permission.USER_META_SETTEMP, Permission.GROUP_META_SETTEMP, Predicates.inRange(0, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -26,17 +26,18 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,14 +45,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class MetaUnset extends SharedSubCommand {
|
||||
public MetaUnset() {
|
||||
super("unset", "Unsets a meta value", Permission.USER_META_UNSET, Permission.GROUP_META_UNSET,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the meta pair in")
|
||||
)
|
||||
);
|
||||
public MetaUnset(LocaleManager locale) {
|
||||
super(CommandSpec.META_UNSET.spec(locale), "unset", Permission.USER_META_UNSET, Permission.GROUP_META_UNSET, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -26,17 +26,18 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.meta;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,14 +45,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class MetaUnsetTemp extends SharedSubCommand {
|
||||
public MetaUnsetTemp() {
|
||||
super("unsettemp", "Unsets a temporary meta value", Permission.USER_META_UNSETTEMP, Permission.GROUP_META_UNSETTEMP,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the meta pair in")
|
||||
)
|
||||
);
|
||||
public MetaUnsetTemp(LocaleManager locale) {
|
||||
super(CommandSpec.META_UNSETTEMP.spec(locale), "unsettemp", Permission.USER_META_UNSETTEMP, Permission.GROUP_META_UNSETTEMP, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-9
@@ -26,19 +26,20 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.other;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -46,13 +47,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class HolderClear<T extends PermissionHolder> extends SubCommand<T> {
|
||||
public HolderClear(boolean user) {
|
||||
super("clear", "Removes all permissions, parents and meta", user ? Permission.USER_CLEAR : Permission.GROUP_CLEAR,
|
||||
Predicates.alwaysFalse(),
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
);
|
||||
public HolderClear(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.HOLDER_CLEAR.spec(locale), "clear", user ? Permission.USER_CLEAR : Permission.GROUP_CLEAR, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-5
@@ -37,12 +37,14 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeModel;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -68,10 +70,8 @@ public class HolderEditor<T extends PermissionHolder> extends SubCommand<T> {
|
||||
private static final String GROUP_ID_PATTERN = "group/";
|
||||
private static final String FILE_NAME = "luckperms-data.json";
|
||||
|
||||
public HolderEditor(boolean user) {
|
||||
super("editor", "Opens the web permission editor", user ? Permission.USER_EDITOR : Permission.GROUP_EDITOR,
|
||||
Predicates.alwaysFalse(), null
|
||||
);
|
||||
public HolderEditor(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.HOLDER_EDITOR.spec(locale), "editor", user ? Permission.USER_EDITOR : Permission.GROUP_EDITOR, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-4
@@ -31,9 +31,11 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -42,9 +44,8 @@ import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class HolderShowTracks<T extends PermissionHolder> extends SubCommand<T> {
|
||||
public HolderShowTracks(boolean user) {
|
||||
super("showtracks", "Lists the tracks that the object is on",
|
||||
user ? Permission.USER_SHOWTRACKS : Permission.GROUP_SHOWTRACKS, Predicates.alwaysFalse(), null);
|
||||
public HolderShowTracks(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.HOLDER_SHOWTRACKS.spec(locale), "showtracks", user ? Permission.USER_SHOWTRACKS : Permission.GROUP_SHOWTRACKS, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+13
-11
@@ -30,19 +30,21 @@ import com.google.common.collect.ImmutableList;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedMainCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
|
||||
public class CommandParent<T extends PermissionHolder> extends SharedMainCommand<T> {
|
||||
public CommandParent(boolean user) {
|
||||
super("Parent", "Edit inheritances", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new ParentInfo())
|
||||
.add(new ParentSet())
|
||||
.add(new ParentAdd())
|
||||
.add(new ParentRemove())
|
||||
.add(new ParentSetTrack())
|
||||
.add(new ParentAddTemp())
|
||||
.add(new ParentRemoveTemp())
|
||||
.add(new ParentClear())
|
||||
.add(new ParentClearTrack())
|
||||
public CommandParent(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.PARENT.spec(locale), "Parent", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new ParentInfo(locale))
|
||||
.add(new ParentSet(locale))
|
||||
.add(new ParentAdd(locale))
|
||||
.add(new ParentRemove(locale))
|
||||
.add(new ParentSetTrack(locale))
|
||||
.add(new ParentAddTemp(locale))
|
||||
.add(new ParentRemoveTemp(locale))
|
||||
.add(new ParentClear(locale))
|
||||
.add(new ParentClearTrack(locale))
|
||||
.build());
|
||||
}
|
||||
}
|
||||
|
||||
+5
-10
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -48,14 +49,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete;
|
||||
|
||||
public class ParentAdd extends SharedSubCommand {
|
||||
public ParentAdd() {
|
||||
super("add", "Sets another group for the object to inherit permissions from", Permission.USER_PARENT_ADD,
|
||||
Permission.GROUP_PARENT_ADD, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to inherit from"),
|
||||
Arg.create("context...", false, "the contexts to inherit the group in")
|
||||
)
|
||||
);
|
||||
public ParentAdd(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_ADD.spec(locale), "add", Permission.USER_PARENT_ADD, Permission.GROUP_PARENT_ADD, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-11
@@ -28,7 +28,6 @@ package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -36,13 +35,15 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.TemporaryModifier;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -54,15 +55,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete;
|
||||
|
||||
public class ParentAddTemp extends SharedSubCommand {
|
||||
public ParentAddTemp() {
|
||||
super("addtemp", "Sets another group for the object to inherit permissions from temporarily",
|
||||
Permission.USER_PARENT_ADDTEMP, Permission.GROUP_PARENT_ADDTEMP, Predicates.inRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to inherit from"),
|
||||
Arg.create("duration", true, "the duration of the group membership"),
|
||||
Arg.create("context...", false, "the contexts to inherit the group in")
|
||||
)
|
||||
);
|
||||
public ParentAddTemp(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_ADD_TEMP.spec(locale), "addtemp", Permission.USER_PARENT_ADDTEMP, Permission.GROUP_PARENT_ADDTEMP, Predicates.inRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-8
@@ -26,17 +26,18 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,12 +45,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ParentClear extends SharedSubCommand {
|
||||
public ParentClear() {
|
||||
super("clear", "Clears all parents", Permission.USER_PARENT_CLEAR, Permission.GROUP_PARENT_CLEAR, Predicates.alwaysFalse(),
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
);
|
||||
public ParentClear(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_CLEAR.spec(locale), "clear", Permission.USER_PARENT_CLEAR, Permission.GROUP_PARENT_CLEAR, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-9
@@ -26,7 +26,6 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -34,12 +33,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -49,13 +50,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getTrackTabComplete;
|
||||
|
||||
public class ParentClearTrack extends SharedSubCommand {
|
||||
public ParentClearTrack() {
|
||||
super("cleartrack", "Clears all parents on a given track", Permission.USER_PARENT_CLEAR_TRACK, Permission.GROUP_PARENT_CLEAR_TRACK, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to remove on"),
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
);
|
||||
public ParentClearTrack(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_CLEAR_TRACK.spec(locale), "cleartrack", Permission.USER_PARENT_CLEAR_TRACK, Permission.GROUP_PARENT_CLEAR_TRACK, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-4
@@ -32,9 +32,11 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -43,9 +45,8 @@ import java.util.List;
|
||||
import java.util.SortedSet;
|
||||
|
||||
public class ParentInfo extends SharedSubCommand {
|
||||
public ParentInfo() {
|
||||
super("info", "Lists the groups that this object inherits from",
|
||||
Permission.USER_PARENT_INFO, Permission.GROUP_PARENT_INFO, Predicates.alwaysFalse(), null);
|
||||
public ParentInfo(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_INFO.spec(locale), "info", Permission.USER_PARENT_INFO, Permission.GROUP_PARENT_INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -27,7 +27,6 @@ package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -35,12 +34,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -50,14 +51,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete;
|
||||
|
||||
public class ParentRemove extends SharedSubCommand {
|
||||
public ParentRemove() {
|
||||
super("remove", "Removes a previously set inheritance rule", Permission.USER_PARENT_REMOVE,
|
||||
Permission.GROUP_PARENT_REMOVE, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to remove"),
|
||||
Arg.create("context...", false, "the contexts to remove the group in")
|
||||
)
|
||||
);
|
||||
public ParentRemove(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_REMOVE.spec(locale), "remove", Permission.USER_PARENT_REMOVE, Permission.GROUP_PARENT_REMOVE, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -48,14 +49,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete;
|
||||
|
||||
public class ParentRemoveTemp extends SharedSubCommand {
|
||||
public ParentRemoveTemp() {
|
||||
super("removetemp", "Removes a previously set temporary inheritance rule",
|
||||
Permission.USER_PARENT_REMOVETEMP, Permission.GROUP_PARENT_REMOVETEMP, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to remove"),
|
||||
Arg.create("context...", false, "the contexts to remove the group in")
|
||||
)
|
||||
);
|
||||
public ParentRemoveTemp(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_REMOVE_TEMP.spec(locale), "removetemp", Permission.USER_PARENT_REMOVETEMP, Permission.GROUP_PARENT_REMOVETEMP, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -26,19 +26,20 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -48,14 +49,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete;
|
||||
|
||||
public class ParentSet extends SharedSubCommand {
|
||||
public ParentSet() {
|
||||
super("set", "Removes all other groups the object inherits already and adds them to the one given",
|
||||
Permission.USER_PARENT_SET, Permission.GROUP_PARENT_SET, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to set to"),
|
||||
Arg.create("context...", false, "the contexts to set the group in")
|
||||
)
|
||||
);
|
||||
public ParentSet(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_SET.spec(locale), "set", Permission.USER_PARENT_SET, Permission.GROUP_PARENT_SET, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-11
@@ -26,7 +26,6 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.parent;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -34,12 +33,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -50,15 +51,8 @@ import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroup
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getTrackTabComplete;
|
||||
|
||||
public class ParentSetTrack extends SharedSubCommand {
|
||||
public ParentSetTrack() {
|
||||
super("settrack", "Removes all other groups the object inherits from already on the given track and adds them to the one given",
|
||||
Permission.USER_PARENT_SET_TRACK, Permission.GROUP_PARENT_SET_TRACK, Predicates.inRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to set on"),
|
||||
Arg.create("group", true, "the group to set to, or a number relating to the position of the group on the given track"),
|
||||
Arg.create("context...", false, "the contexts to set the group in")
|
||||
)
|
||||
);
|
||||
public ParentSetTrack(LocaleManager locale) {
|
||||
super(CommandSpec.PARENT_SET_TRACK.spec(locale), "settrack", Permission.USER_PARENT_SET_TRACK, Permission.GROUP_PARENT_SET_TRACK, Predicates.inRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+11
-9
@@ -30,17 +30,19 @@ import com.google.common.collect.ImmutableList;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedMainCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
|
||||
public class CommandPermission<T extends PermissionHolder> extends SharedMainCommand<T> {
|
||||
public CommandPermission(boolean user) {
|
||||
super("Permission", "Edit permissions", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new PermissionInfo())
|
||||
.add(new PermissionSet())
|
||||
.add(new PermissionUnset())
|
||||
.add(new PermissionSetTemp())
|
||||
.add(new PermissionUnsetTemp())
|
||||
.add(new PermissionCheck())
|
||||
.add(new PermissionCheckInherits())
|
||||
public CommandPermission(LocaleManager locale, boolean user) {
|
||||
super(CommandSpec.PERMISSION.spec(locale), "Permission", user, ImmutableList.<SharedSubCommand>builder()
|
||||
.add(new PermissionInfo(locale))
|
||||
.add(new PermissionSet(locale))
|
||||
.add(new PermissionUnset(locale))
|
||||
.add(new PermissionSetTemp(locale))
|
||||
.add(new PermissionUnsetTemp(locale))
|
||||
.add(new PermissionCheck(locale))
|
||||
.add(new PermissionCheckInherits(locale))
|
||||
.build());
|
||||
}
|
||||
}
|
||||
|
||||
+5
-10
@@ -27,17 +27,18 @@ package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
|
||||
import me.lucko.luckperms.api.Tristate;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -46,14 +47,8 @@ import java.util.List;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionCheck extends SharedSubCommand {
|
||||
public PermissionCheck() {
|
||||
super("check", "Checks to see if the object has a certain permission node", Permission.USER_PERM_CHECK,
|
||||
Permission.GROUP_PERM_CHECK, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to check for"),
|
||||
Arg.create("context...", false, "the contexts to check in")
|
||||
)
|
||||
);
|
||||
public PermissionCheck(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_CHECK.spec(locale), "check", Permission.USER_PERM_CHECK, Permission.GROUP_PERM_CHECK, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -26,18 +26,19 @@
|
||||
package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.InheritanceInfo;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -46,14 +47,8 @@ import java.util.List;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionCheckInherits extends SharedSubCommand {
|
||||
public PermissionCheckInherits() {
|
||||
super("checkinherits", "Checks to see if the object inherits a certain permission node",
|
||||
Permission.USER_PERM_CHECK_INHERITS, Permission.GROUP_PERM_CHECK_INHERITS, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to check for"),
|
||||
Arg.create("context...", false, "the contexts to check in")
|
||||
)
|
||||
);
|
||||
public PermissionCheckInherits(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_CHECK_INHERITS.spec(locale), "checkinherits", Permission.USER_PERM_CHECK_INHERITS, Permission.GROUP_PERM_CHECK_INHERITS, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -29,7 +29,6 @@ import com.google.common.collect.Maps;
|
||||
|
||||
import me.lucko.luckperms.api.LocalizedNode;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -37,11 +36,13 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Constants;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -60,14 +61,8 @@ import java.util.SortedSet;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
public class PermissionInfo extends SharedSubCommand {
|
||||
public PermissionInfo() {
|
||||
super("info", "Lists the permission nodes the object has", Permission.USER_PERM_INFO,
|
||||
Permission.GROUP_PERM_INFO, Predicates.notInRange(0, 2),
|
||||
Arg.list(
|
||||
Arg.create("page", false, "the page to view"),
|
||||
Arg.create("filter", false, "the string to filter by")
|
||||
)
|
||||
);
|
||||
public PermissionInfo(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_INFO.spec(locale), "info", Permission.USER_PERM_INFO, Permission.GROUP_PERM_INFO, Predicates.notInRange(0, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-11
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -49,15 +50,8 @@ import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getBoolT
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionSet extends SharedSubCommand {
|
||||
public PermissionSet() {
|
||||
super("set", "Sets a permission for the object", Permission.USER_PERM_SET, Permission.GROUP_PERM_SET,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to set"),
|
||||
Arg.create("true|false", false, "the value of the node"),
|
||||
Arg.create("context...", false, "the contexts to add the permission in")
|
||||
)
|
||||
);
|
||||
public PermissionSet(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_SET.spec(locale), "set", Permission.USER_PERM_SET, Permission.GROUP_PERM_SET, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-12
@@ -28,7 +28,6 @@ package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
@@ -36,12 +35,14 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.TemporaryModifier;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -54,16 +55,8 @@ import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getBoolT
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionSetTemp extends SharedSubCommand {
|
||||
public PermissionSetTemp() {
|
||||
super("settemp", "Sets a permission for the object temporarily", Permission.USER_PERM_SETTEMP,
|
||||
Permission.GROUP_PERM_SETTEMP, Predicates.inRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to set"),
|
||||
Arg.create("true|false", false, "the value of the node"),
|
||||
Arg.create("duration", true, "the duration until the permission node expires"),
|
||||
Arg.create("context...", false, "the contexts to add the permission in")
|
||||
)
|
||||
);
|
||||
public PermissionSetTemp(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_SETTEMP.spec(locale), "settemp", Permission.USER_PERM_SETTEMP, Permission.GROUP_PERM_SETTEMP, Predicates.inRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -48,14 +49,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionUnset extends SharedSubCommand {
|
||||
public PermissionUnset() {
|
||||
super("unset", "Unsets a permission for the object", Permission.USER_PERM_UNSET, Permission.GROUP_PERM_UNSET,
|
||||
Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the permission in")
|
||||
)
|
||||
);
|
||||
public PermissionUnset(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_UNSET.spec(locale), "unset", Permission.USER_PERM_UNSET, Permission.GROUP_PERM_UNSET, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -27,18 +27,19 @@ package me.lucko.luckperms.common.commands.impl.generic.permission;
|
||||
|
||||
import me.lucko.luckperms.api.DataMutateResult;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -48,14 +49,8 @@ import java.util.stream.Collectors;
|
||||
import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete;
|
||||
|
||||
public class PermissionUnsetTemp extends SharedSubCommand {
|
||||
public PermissionUnsetTemp() {
|
||||
super("unsettemp", "Unsets a temporary permission for the object", Permission.USER_PERM_UNSETTEMP,
|
||||
Permission.GROUP_PERM_UNSETTEMP, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the permission in")
|
||||
)
|
||||
);
|
||||
public PermissionUnsetTemp(LocaleManager locale) {
|
||||
super(CommandSpec.PERMISSION_UNSETTEMP.spec(locale), "unsettemp", Permission.USER_PERM_UNSETTEMP, Permission.GROUP_PERM_UNSETTEMP, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,26 +26,23 @@
|
||||
package me.lucko.luckperms.common.commands.impl.group;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class CreateGroup extends SingleCommand {
|
||||
public CreateGroup() {
|
||||
super("CreateGroup", "Create a new group", "/%s creategroup <group>", Permission.CREATE_GROUP, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the group")
|
||||
)
|
||||
);
|
||||
public CreateGroup(LocaleManager locale) {
|
||||
super(CommandSpec.CREATE_GROUP.spec(locale), "CreateGroup", Permission.CREATE_GROUP, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-11
@@ -26,31 +26,25 @@
|
||||
package me.lucko.luckperms.common.commands.impl.group;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.DeletionCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class DeleteGroup extends SingleCommand {
|
||||
public DeleteGroup() {
|
||||
super("DeleteGroup", "Delete a group", "/%s deletegroup <group>", Permission.DELETE_GROUP, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the group")
|
||||
)
|
||||
);
|
||||
public DeleteGroup(LocaleManager locale) {
|
||||
super(CommandSpec.DELETE_GROUP.spec(locale), "DeleteGroup", Permission.DELETE_GROUP, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,26 +26,25 @@
|
||||
package me.lucko.luckperms.common.commands.impl.group;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class GroupClone extends SubCommand<Group> {
|
||||
public GroupClone() {
|
||||
super("clone", "Clone the group", Permission.GROUP_CLONE, Predicates.not(1),
|
||||
Arg.list(Arg.create("name", true, "the name of the group to clone onto"))
|
||||
);
|
||||
public GroupClone(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP_CLONE.spec(locale), "clone", Permission.GROUP_CLONE, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,9 +31,11 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -43,8 +45,8 @@ import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class GroupInfo extends SubCommand<Group> {
|
||||
public GroupInfo() {
|
||||
super("info", "Gives info about the group", Permission.GROUP_INFO, Predicates.alwaysFalse(), null);
|
||||
public GroupInfo(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP_INFO.spec(locale), "info", Permission.GROUP_INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-9
@@ -29,7 +29,6 @@ import com.google.common.collect.Maps;
|
||||
|
||||
import me.lucko.luckperms.api.HeldPermission;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
@@ -37,10 +36,12 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Constants;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -63,13 +64,8 @@ import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class GroupListMembers extends SubCommand<Group> {
|
||||
public GroupListMembers() {
|
||||
super("listmembers", "Show the users/groups who inherit from this group",
|
||||
Permission.GROUP_LISTMEMBERS, Predicates.notInRange(0, 1),
|
||||
Arg.list(
|
||||
Arg.create("page", false, "the page to view")
|
||||
)
|
||||
);
|
||||
public GroupListMembers(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP_LISTMEMBERS.spec(locale), "listmembers", Permission.GROUP_LISTMEMBERS, Predicates.notInRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+16
-14
@@ -36,27 +36,29 @@ import me.lucko.luckperms.common.commands.impl.generic.other.HolderShowTracks;
|
||||
import me.lucko.luckperms.common.commands.impl.generic.parent.CommandParent;
|
||||
import me.lucko.luckperms.common.commands.impl.generic.permission.CommandPermission;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class GroupMainCommand extends MainCommand<Group> {
|
||||
public GroupMainCommand() {
|
||||
super("Group", "Group commands", "/%s group <group>", 2, ImmutableList.<Command<Group, ?>>builder()
|
||||
.add(new GroupInfo())
|
||||
.add(new CommandPermission<>(false))
|
||||
.add(new CommandParent<>(false))
|
||||
.add(new CommandMeta<>(false))
|
||||
.add(new HolderEditor<>(false))
|
||||
.add(new GroupListMembers())
|
||||
.add(new GroupSetWeight())
|
||||
.add(new HolderShowTracks<>(false))
|
||||
.add(new HolderClear<>(false))
|
||||
.add(new GroupRename())
|
||||
.add(new GroupClone())
|
||||
public GroupMainCommand(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP.spec(locale), "Group", 2, ImmutableList.<Command<Group, ?>>builder()
|
||||
.add(new GroupInfo(locale))
|
||||
.add(new CommandPermission<>(locale, false))
|
||||
.add(new CommandParent<>(locale, false))
|
||||
.add(new CommandMeta<>(locale, false))
|
||||
.add(new HolderEditor<>(locale, false))
|
||||
.add(new GroupListMembers(locale))
|
||||
.add(new GroupSetWeight(locale))
|
||||
.add(new HolderShowTracks<>(locale, false))
|
||||
.add(new HolderClear<>(locale, false))
|
||||
.add(new GroupRename(locale))
|
||||
.add(new GroupClone(locale))
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -27,26 +27,25 @@ package me.lucko.luckperms.common.commands.impl.group;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.api.event.cause.DeletionCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class GroupRename extends SubCommand<Group> {
|
||||
public GroupRename() {
|
||||
super("rename", "Rename the group", Permission.GROUP_RENAME, Predicates.not(1),
|
||||
Arg.list(Arg.create("name", true, "the new name"))
|
||||
);
|
||||
public GroupRename(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP_RENAME.spec(locale), "rename", Permission.GROUP_RENAME, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-6
@@ -25,26 +25,25 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.group;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class GroupSetWeight extends SubCommand<Group> {
|
||||
public GroupSetWeight() {
|
||||
super("setweight", "Set the groups weight", Permission.GROUP_SETWEIGHT, Predicates.not(1),
|
||||
Arg.list(Arg.create("weight", true, "the weight to set"))
|
||||
);
|
||||
public GroupSetWeight(LocaleManager locale) {
|
||||
super(CommandSpec.GROUP_SETWEIGHT.spec(locale), "setweight", Permission.GROUP_SETWEIGHT, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -29,9 +29,11 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -39,8 +41,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ListGroups extends SingleCommand {
|
||||
public ListGroups() {
|
||||
super("ListGroups", "List all groups on the platform", "/%s listgroups", Permission.LIST_GROUPS, Predicates.alwaysFalse(), null);
|
||||
public ListGroups(LocaleManager locale) {
|
||||
super(CommandSpec.LIST_GROUPS.spec(locale), "ListGroups", Permission.LIST_GROUPS, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+6
-10
@@ -23,18 +23,19 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.api.LogEntry;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -44,13 +45,8 @@ import java.util.Map;
|
||||
import java.util.SortedMap;
|
||||
|
||||
public class LogGroupHistory extends SubCommand<Log> {
|
||||
public LogGroupHistory() {
|
||||
super("grouphistory", "View an group's history", Permission.LOG_GROUP_HISTORY, Predicates.notInRange(1, 2),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the name of the group"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
);
|
||||
public LogGroupHistory(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_GROUP_HISTORY.spec(locale), "grouphistory", Permission.LOG_GROUP_HISTORY, Predicates.notInRange(1, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
+11
-15
@@ -29,15 +29,11 @@ import com.google.common.collect.ImmutableList;
|
||||
|
||||
import me.lucko.luckperms.common.commands.abstraction.Command;
|
||||
import me.lucko.luckperms.common.commands.abstraction.MainCommand;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogGroupHistory;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogNotify;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogRecent;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogSearch;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogTrackHistory;
|
||||
import me.lucko.luckperms.common.commands.impl.log.subcommands.LogUserHistory;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.Collections;
|
||||
@@ -46,14 +42,14 @@ import java.util.Optional;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class LogMainCommand extends MainCommand<Log> {
|
||||
public LogMainCommand() {
|
||||
super("Log", "Log commands", "/%s log", 1, ImmutableList.<Command<Log, ?>>builder()
|
||||
.add(new LogRecent())
|
||||
.add(new LogSearch())
|
||||
.add(new LogNotify())
|
||||
.add(new LogUserHistory())
|
||||
.add(new LogGroupHistory())
|
||||
.add(new LogTrackHistory())
|
||||
public LogMainCommand(LocaleManager locale) {
|
||||
super(CommandSpec.LOG.spec(locale), "Log", 1, ImmutableList.<Command<Log, ?>>builder()
|
||||
.add(new LogRecent(locale))
|
||||
.add(new LogSearch(locale))
|
||||
.add(new LogNotify(locale))
|
||||
.add(new LogUserHistory(locale))
|
||||
.add(new LogGroupHistory(locale))
|
||||
.add(new LogTrackHistory(locale))
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
+6
-7
@@ -23,16 +23,17 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -41,10 +42,8 @@ import java.util.Set;
|
||||
import java.util.UUID;
|
||||
|
||||
public class LogNotify extends SubCommand<Log> {
|
||||
public LogNotify() {
|
||||
super("notify", "Toggle notifications", Permission.LOG_NOTIFY, Predicates.notInRange(0, 1),
|
||||
Arg.list(Arg.create("on|off", false, "whether to toggle on or off"))
|
||||
);
|
||||
public LogNotify(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_NOTIFY.spec(locale), "notify", Permission.LOG_NOTIFY, Predicates.notInRange(0, 1));
|
||||
}
|
||||
|
||||
@Override
|
||||
+32
-36
@@ -23,19 +23,20 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.api.LogEntry;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -46,39 +47,8 @@ import java.util.SortedMap;
|
||||
import java.util.UUID;
|
||||
|
||||
public class LogRecent extends SubCommand<Log> {
|
||||
private static CommandResult showLog(int page, UUID filter, Sender sender, Log log) {
|
||||
int maxPage = (filter != null) ? log.getRecentMaxPages(filter) : log.getRecentMaxPages();
|
||||
if (maxPage == 0) {
|
||||
Message.LOG_NO_ENTRIES.send(sender);
|
||||
return CommandResult.STATE_ERROR;
|
||||
}
|
||||
|
||||
if (page < 1 || page > maxPage) {
|
||||
Message.LOG_INVALID_PAGE_RANGE.send(sender, maxPage);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
SortedMap<Integer, LogEntry> entries = (filter != null) ? log.getRecent(page, filter) : log.getRecent(page);
|
||||
if (filter != null) {
|
||||
String name = entries.values().stream().findAny().get().getActorName();
|
||||
Message.LOG_RECENT_BY_HEADER.send(sender, name, page, maxPage);
|
||||
} else {
|
||||
Message.LOG_RECENT_HEADER.send(sender, page, maxPage);
|
||||
}
|
||||
|
||||
for (Map.Entry<Integer, LogEntry> e : entries.entrySet()) {
|
||||
Message.LOG_ENTRY.send(sender, e.getKey(), DateUtil.formatDateDiff(e.getValue().getTimestamp()), e.getValue().getFormatted());
|
||||
}
|
||||
return CommandResult.SUCCESS;
|
||||
}
|
||||
|
||||
public LogRecent() {
|
||||
super("recent", "View recent actions", Permission.LOG_RECENT, Predicates.notInRange(0, 2),
|
||||
Arg.list(
|
||||
Arg.create("user", false, "the name/uuid of the user to filter by"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
);
|
||||
public LogRecent(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_RECENT.spec(locale), "recent", Permission.LOG_RECENT, Predicates.notInRange(0, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -150,4 +120,30 @@ public class LogRecent extends SubCommand<Log> {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static CommandResult showLog(int page, UUID filter, Sender sender, Log log) {
|
||||
int maxPage = (filter != null) ? log.getRecentMaxPages(filter) : log.getRecentMaxPages();
|
||||
if (maxPage == 0) {
|
||||
Message.LOG_NO_ENTRIES.send(sender);
|
||||
return CommandResult.STATE_ERROR;
|
||||
}
|
||||
|
||||
if (page < 1 || page > maxPage) {
|
||||
Message.LOG_INVALID_PAGE_RANGE.send(sender, maxPage);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
SortedMap<Integer, LogEntry> entries = (filter != null) ? log.getRecent(page, filter) : log.getRecent(page);
|
||||
if (filter != null) {
|
||||
String name = entries.values().stream().findAny().get().getActorName();
|
||||
Message.LOG_RECENT_BY_HEADER.send(sender, name, page, maxPage);
|
||||
} else {
|
||||
Message.LOG_RECENT_HEADER.send(sender, page, maxPage);
|
||||
}
|
||||
|
||||
for (Map.Entry<Integer, LogEntry> e : entries.entrySet()) {
|
||||
Message.LOG_ENTRY.send(sender, e.getKey(), DateUtil.formatDateDiff(e.getValue().getTimestamp()), e.getValue().getFormatted());
|
||||
}
|
||||
return CommandResult.SUCCESS;
|
||||
}
|
||||
}
|
||||
+6
-10
@@ -23,17 +23,18 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.api.LogEntry;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -44,13 +45,8 @@ import java.util.SortedMap;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class LogSearch extends SubCommand<Log> {
|
||||
public LogSearch() {
|
||||
super("search", "Search the log for an entry", Permission.LOG_SEARCH, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("query", true, "the query to search by"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
);
|
||||
public LogSearch(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_SEARCH.spec(locale), "search", Permission.LOG_SEARCH, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
+6
-10
@@ -23,18 +23,19 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.api.LogEntry;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -44,13 +45,8 @@ import java.util.Map;
|
||||
import java.util.SortedMap;
|
||||
|
||||
public class LogTrackHistory extends SubCommand<Log> {
|
||||
public LogTrackHistory() {
|
||||
super("trackhistory", "View a track's history", Permission.LOG_TRACK_HISTORY, Predicates.notInRange(1, 2),
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the name of the track"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
);
|
||||
public LogTrackHistory(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_TRACK_HISTORY.spec(locale), "trackhistory", Permission.LOG_TRACK_HISTORY, Predicates.notInRange(1, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
+29
-34
@@ -23,19 +23,20 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.log.subcommands;
|
||||
package me.lucko.luckperms.common.commands.impl.log;
|
||||
|
||||
import me.lucko.luckperms.api.LogEntry;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Log;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -46,36 +47,8 @@ import java.util.SortedMap;
|
||||
import java.util.UUID;
|
||||
|
||||
public class LogUserHistory extends SubCommand<Log> {
|
||||
private static CommandResult showLog(int page, UUID user, Sender sender, Log log) {
|
||||
int maxPage = log.getUserHistoryMaxPages(user);
|
||||
if (maxPage == 0) {
|
||||
Message.LOG_NO_ENTRIES.send(sender);
|
||||
return CommandResult.STATE_ERROR;
|
||||
}
|
||||
|
||||
if (page < 1 || page > maxPage) {
|
||||
Message.LOG_INVALID_PAGE_RANGE.send(sender, maxPage);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
SortedMap<Integer, LogEntry> entries = log.getUserHistory(page, user);
|
||||
String name = entries.values().stream().findAny().get().getActedName();
|
||||
Message.LOG_HISTORY_USER_HEADER.send(sender, name, page, maxPage);
|
||||
|
||||
for (Map.Entry<Integer, LogEntry> e : entries.entrySet()) {
|
||||
Message.LOG_ENTRY.send(sender, e.getKey(), DateUtil.formatDateDiff(e.getValue().getTimestamp()), e.getValue().getFormatted());
|
||||
}
|
||||
|
||||
return CommandResult.SUCCESS;
|
||||
}
|
||||
|
||||
public LogUserHistory() {
|
||||
super("userhistory", "View a user's history", Permission.LOG_USER_HISTORY, Predicates.notInRange(1, 2),
|
||||
Arg.list(
|
||||
Arg.create("user", true, "the name/uuid of the user"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
);
|
||||
public LogUserHistory(LocaleManager locale) {
|
||||
super(CommandSpec.LOG_USER_HISTORY.spec(locale), "userhistory", Permission.LOG_USER_HISTORY, Predicates.notInRange(1, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +72,6 @@ public class LogUserHistory extends SubCommand<Log> {
|
||||
}
|
||||
|
||||
return showLog(page, uuid, sender, log);
|
||||
|
||||
}
|
||||
|
||||
if (user.length() <= 16) {
|
||||
@@ -125,4 +97,27 @@ public class LogUserHistory extends SubCommand<Log> {
|
||||
Message.USER_INVALID_ENTRY.send(sender, user);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
private static CommandResult showLog(int page, UUID user, Sender sender, Log log) {
|
||||
int maxPage = log.getUserHistoryMaxPages(user);
|
||||
if (maxPage == 0) {
|
||||
Message.LOG_NO_ENTRIES.send(sender);
|
||||
return CommandResult.STATE_ERROR;
|
||||
}
|
||||
|
||||
if (page < 1 || page > maxPage) {
|
||||
Message.LOG_INVALID_PAGE_RANGE.send(sender, maxPage);
|
||||
return CommandResult.INVALID_ARGS;
|
||||
}
|
||||
|
||||
SortedMap<Integer, LogEntry> entries = log.getUserHistory(page, user);
|
||||
String name = entries.values().stream().findAny().get().getActedName();
|
||||
Message.LOG_HISTORY_USER_HEADER.send(sender, name, page, maxPage);
|
||||
|
||||
for (Map.Entry<Integer, LogEntry> e : entries.entrySet()) {
|
||||
Message.LOG_ENTRY.send(sender, e.getKey(), DateUtil.formatDateDiff(e.getValue().getTimestamp()), e.getValue().getFormatted());
|
||||
}
|
||||
|
||||
return CommandResult.SUCCESS;
|
||||
}
|
||||
}
|
||||
+8
-6
@@ -34,6 +34,8 @@ import me.lucko.luckperms.common.commands.abstraction.MainCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -58,19 +60,19 @@ public class MigrationMainCommand extends MainCommand<Object> {
|
||||
private List<Command<Object, ?>> commands = null;
|
||||
private boolean display = true;
|
||||
|
||||
public MigrationMainCommand() {
|
||||
super("Migration", "Migration commands", "/%s migration", 1, null);
|
||||
public MigrationMainCommand(LocaleManager locale) {
|
||||
super(CommandSpec.MIGRATION.spec(locale), "Migration", 1, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized Optional<List<Command<Object, ?>>> getChildren() {
|
||||
if (commands == null) {
|
||||
commands = getAvailableCommands();
|
||||
commands = getAvailableCommands(getSpec().getLocaleManager());
|
||||
|
||||
// Add dummy command to show in the list.
|
||||
if (commands.isEmpty()) {
|
||||
display = false;
|
||||
commands.add(new SubCommand<Object>("No available plugins to migrate from", "No available plugins to migrate from.", Permission.MIGRATION, Predicates.alwaysFalse(), null) {
|
||||
commands.add(new SubCommand<Object>(CommandSpec.MIGRATION_COMMAND.spec(getSpec().getLocaleManager()), "No available plugins to migrate from", Permission.MIGRATION, Predicates.alwaysFalse()) {
|
||||
@Override
|
||||
public CommandResult execute(LuckPermsPlugin plugin, Sender sender, Object o, List<String> args, String label) throws CommandException {
|
||||
return CommandResult.SUCCESS;
|
||||
@@ -94,13 +96,13 @@ public class MigrationMainCommand extends MainCommand<Object> {
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
private static List<Command<Object, ?>> getAvailableCommands() {
|
||||
private static List<Command<Object, ?>> getAvailableCommands(LocaleManager locale) {
|
||||
List<Command<Object, ?>> l = new ArrayList<>();
|
||||
|
||||
for (Map.Entry<String, String> plugin : PLUGINS.entrySet()) {
|
||||
try {
|
||||
Class.forName(plugin.getKey());
|
||||
l.add((SubCommand<Object>) Class.forName(plugin.getValue()).newInstance());
|
||||
l.add((SubCommand<Object>) Class.forName(plugin.getValue()).getConstructor(LocaleManager.class).newInstance(locale));
|
||||
} catch (Throwable ignored) {}
|
||||
}
|
||||
|
||||
|
||||
+5
-10
@@ -32,17 +32,18 @@ import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
|
||||
import me.lucko.luckperms.api.context.ImmutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SharedSubCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeModel;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -59,14 +60,8 @@ import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ApplyEditsCommand extends SingleCommand {
|
||||
public ApplyEditsCommand() {
|
||||
super("ApplyEdits", "Applies permission changes made from the web editor",
|
||||
"/%s applyedits <code> [target]", Permission.APPLY_EDITS, Predicates.notInRange(1, 2),
|
||||
Arg.list(
|
||||
Arg.create("code", true, "the unique code for the data"),
|
||||
Arg.create("target", false, "who to apply the data to")
|
||||
)
|
||||
);
|
||||
public ApplyEditsCommand(LocaleManager locale) {
|
||||
super(CommandSpec.APPLY_EDITS.spec(locale), "ApplyEdits", Permission.APPLY_EDITS, Predicates.notInRange(1, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-12
@@ -36,14 +36,15 @@ import me.lucko.luckperms.common.bulkupdate.action.UpdateAction;
|
||||
import me.lucko.luckperms.common.bulkupdate.comparisons.ComparisonType;
|
||||
import me.lucko.luckperms.common.bulkupdate.constraint.Constraint;
|
||||
import me.lucko.luckperms.common.bulkupdate.constraint.QueryField;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -54,16 +55,8 @@ import java.util.concurrent.TimeUnit;
|
||||
public class BulkUpdateCommand extends SingleCommand {
|
||||
private final Cache<String, BulkUpdate> pendingOperations = Caffeine.newBuilder().expireAfterWrite(30, TimeUnit.SECONDS).build();
|
||||
|
||||
public BulkUpdateCommand() {
|
||||
super("BulkUpdate", "Execute bulk change queries on all data", "/%s bulkupdate", Permission.BULK_UPDATE, Predicates.alwaysFalse(),
|
||||
Arg.list(
|
||||
Arg.create("data type", true, "the type of data being changed. ('all', 'users' or 'groups')"),
|
||||
Arg.create("action", true, "the action to perform on the data. ('update' or 'delete')"),
|
||||
Arg.create("action field", false, "the field to act upon. only required for 'update'. ('permission', 'server' or 'world')"),
|
||||
Arg.create("action value", false, "the value to replace with. only required for 'update'."),
|
||||
Arg.create("constraint...", false, "the constraints required for the update")
|
||||
)
|
||||
);
|
||||
public BulkUpdateCommand(LocaleManager locale) {
|
||||
super(CommandSpec.BULK_UPDATE.spec(locale), "BulkUpdate", Permission.BULK_UPDATE, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -26,16 +26,17 @@
|
||||
package me.lucko.luckperms.common.commands.impl.misc;
|
||||
|
||||
import me.lucko.luckperms.api.Tristate;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -44,14 +45,8 @@ import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class CheckCommand extends SingleCommand {
|
||||
public CheckCommand() {
|
||||
super("Check", "Perform a standard permission check on an online player",
|
||||
"/%s check <user> <permission>", Permission.CHECK, Predicates.not(2),
|
||||
Arg.list(
|
||||
Arg.create("user", true, "the user to check"),
|
||||
Arg.create("permission", true, "the permission to check for")
|
||||
)
|
||||
);
|
||||
public CheckCommand(LocaleManager locale) {
|
||||
super(CommandSpec.CHECK.spec(locale), "Check", Permission.CHECK, Predicates.not(2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-8
@@ -25,13 +25,14 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.misc;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Exporter;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -45,12 +46,8 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
||||
public class ExportCommand extends SingleCommand {
|
||||
private AtomicBoolean running = new AtomicBoolean(false);
|
||||
|
||||
public ExportCommand() {
|
||||
super("Export", "Export data to a file", "/%s export <file>", Permission.EXPORT, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("file", true, "the file to export to")
|
||||
)
|
||||
);
|
||||
public ExportCommand(LocaleManager locale) {
|
||||
super(CommandSpec.EXPORT.spec(locale), "Export", Permission.EXPORT, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-8
@@ -25,13 +25,14 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.misc;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.Importer;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -46,12 +47,8 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
||||
public class ImportCommand extends SingleCommand {
|
||||
private AtomicBoolean running = new AtomicBoolean(false);
|
||||
|
||||
public ImportCommand() {
|
||||
super("Import", "Import data from a file", "/%s import <file>", Permission.IMPORT, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("file", true, "the file to import from")
|
||||
)
|
||||
);
|
||||
public ImportCommand(LocaleManager locale) {
|
||||
super(CommandSpec.IMPORT.spec(locale), "Import", Permission.IMPORT, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+18
-16
@@ -31,8 +31,10 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.config.LuckPermsConfiguration;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.messaging.NoopMessagingService;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -44,21 +46,8 @@ import java.util.Map;
|
||||
import static me.lucko.luckperms.common.commands.utils.Util.formatBoolean;
|
||||
|
||||
public class InfoCommand extends SingleCommand {
|
||||
private static String formatValue(String value) {
|
||||
if (value.equalsIgnoreCase("true") || value.equalsIgnoreCase("false")) {
|
||||
return Util.formatBoolean(Boolean.parseBoolean(value));
|
||||
}
|
||||
|
||||
try {
|
||||
int i = Integer.parseInt(value);
|
||||
return "&a" + i;
|
||||
} catch (NumberFormatException ignored) {}
|
||||
|
||||
return "&f" + value;
|
||||
}
|
||||
|
||||
public InfoCommand() {
|
||||
super("Info", "Print general plugin info", "/%s info", Permission.INFO, Predicates.alwaysFalse(), null);
|
||||
public InfoCommand(LocaleManager locale) {
|
||||
super(CommandSpec.INFO.spec(locale), "Info", Permission.INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -103,4 +92,17 @@ public class InfoCommand extends SingleCommand {
|
||||
|
||||
return CommandResult.SUCCESS;
|
||||
}
|
||||
|
||||
private static String formatValue(String value) {
|
||||
if (value.equalsIgnoreCase("true") || value.equalsIgnoreCase("false")) {
|
||||
return Util.formatBoolean(Boolean.parseBoolean(value));
|
||||
}
|
||||
|
||||
try {
|
||||
int i = Integer.parseInt(value);
|
||||
return "&a" + i;
|
||||
} catch (NumberFormatException ignored) {}
|
||||
|
||||
return "&f" + value;
|
||||
}
|
||||
}
|
||||
|
||||
+5
-4
@@ -28,8 +28,10 @@ package me.lucko.luckperms.common.commands.impl.misc;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.messaging.InternalMessagingService;
|
||||
import me.lucko.luckperms.common.messaging.NoopMessagingService;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
@@ -38,9 +40,8 @@ import me.lucko.luckperms.common.utils.Predicates;
|
||||
import java.util.List;
|
||||
|
||||
public class NetworkSyncCommand extends SingleCommand {
|
||||
public NetworkSyncCommand() {
|
||||
super("NetworkSync", "Sync changes with the storage and request that all other servers on the network do the same",
|
||||
"/%s networksync", Permission.SYNC, Predicates.alwaysFalse(), null);
|
||||
public NetworkSyncCommand(LocaleManager locale) {
|
||||
super(CommandSpec.NETWORK_SYNC.spec(locale), "NetworkSync", Permission.SYNC, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-3
@@ -29,16 +29,18 @@ import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ReloadConfigCommand extends SingleCommand {
|
||||
public ReloadConfigCommand() {
|
||||
super("ReloadConfig", "Reload some of the config options", "/%s reloadconfig", Permission.RELOAD_CONFIG, Predicates.alwaysFalse(), null);
|
||||
public ReloadConfigCommand(LocaleManager locale) {
|
||||
super(CommandSpec.RELOAD_CONFIG.spec(locale), "ReloadConfig", Permission.RELOAD_CONFIG, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-10
@@ -29,7 +29,6 @@ import com.google.common.collect.Maps;
|
||||
|
||||
import me.lucko.luckperms.api.HeldPermission;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
@@ -38,9 +37,11 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Constants;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -63,14 +64,8 @@ import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class SearchCommand extends SingleCommand {
|
||||
public SearchCommand() {
|
||||
super("Search", "Search for users/groups with a specific permission",
|
||||
"/%s search <permission>", Permission.SEARCH, Predicates.notInRange(1, 2),
|
||||
Arg.list(
|
||||
Arg.create("permission", true, "the permission to search for"),
|
||||
Arg.create("page", false, "the page to view")
|
||||
)
|
||||
);
|
||||
public SearchCommand(LocaleManager locale) {
|
||||
super(CommandSpec.SEARCH.spec(locale), "Search", Permission.SEARCH, Predicates.notInRange(1, 2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -28,16 +28,18 @@ package me.lucko.luckperms.common.commands.impl.misc;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class SyncCommand extends SingleCommand {
|
||||
public SyncCommand() {
|
||||
super("Sync", "Sync changes with the storage", "/%s sync", Permission.SYNC, Predicates.alwaysFalse(), null);
|
||||
public SyncCommand(LocaleManager locale) {
|
||||
super(CommandSpec.SYNC.spec(locale), "Sync", Permission.SYNC, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,16 +26,17 @@
|
||||
package me.lucko.luckperms.common.commands.impl.misc;
|
||||
|
||||
import me.lucko.luckperms.api.caching.PermissionData;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.treeview.TreeView;
|
||||
import me.lucko.luckperms.common.treeview.TreeViewBuilder;
|
||||
@@ -50,15 +51,8 @@ import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class TreeCommand extends SingleCommand {
|
||||
public TreeCommand() {
|
||||
super("Tree", "Generate a tree view of permissions",
|
||||
"/%s tree [selection] [max level] [player]", Permission.TREE, Predicates.alwaysFalse(),
|
||||
Arg.list(
|
||||
Arg.create("selection", false, "the root of the tree. specify \".\" to include all permissions"),
|
||||
Arg.create("max level", false, "how many branch levels should be returned"),
|
||||
Arg.create("player", false, "the name of an online player to check against")
|
||||
)
|
||||
);
|
||||
public TreeCommand(LocaleManager locale) {
|
||||
super(CommandSpec.TREE.spec(locale), "Tree", Permission.TREE, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-9
@@ -27,12 +27,13 @@ package me.lucko.luckperms.common.commands.impl.misc;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.common.verbose.VerboseListener;
|
||||
@@ -49,13 +50,8 @@ import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
public class VerboseCommand extends SingleCommand {
|
||||
public VerboseCommand() {
|
||||
super("Verbose", "Manage verbose permission checking", "/%s verbose <true|false> [filter]", Permission.VERBOSE, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("on|record|off|paste", true, "whether to enable/disable logging, or to paste the logged output"),
|
||||
Arg.create("filter", false, "the filter to match entries against")
|
||||
)
|
||||
);
|
||||
public VerboseCommand(LocaleManager locale) {
|
||||
super(CommandSpec.VERBOSE.spec(locale), "Verbose", Permission.VERBOSE, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,26 +26,23 @@
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class CreateTrack extends SingleCommand {
|
||||
public CreateTrack() {
|
||||
super("CreateTrack", "Create a new track", "/%s createtrack <track>", Permission.CREATE_TRACK, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the track")
|
||||
)
|
||||
);
|
||||
public CreateTrack(LocaleManager locale) {
|
||||
super(CommandSpec.CREATE_TRACK.spec(locale), "CreateTrack", Permission.CREATE_TRACK, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,28 +26,24 @@
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.DeletionCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class DeleteTrack extends SingleCommand {
|
||||
public DeleteTrack() {
|
||||
super("DeleteTrack", "Delete a track", "/%s deletetrack <track>", Permission.DELETE_TRACK, Predicates.not(1),
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the track")
|
||||
)
|
||||
);
|
||||
public DeleteTrack(LocaleManager locale) {
|
||||
super(CommandSpec.DELETE_TRACK.spec(locale), "DeleteTrack", Permission.DELETE_TRACK, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -29,8 +29,10 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SingleCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
@@ -38,8 +40,8 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class ListTracks extends SingleCommand {
|
||||
public ListTracks() {
|
||||
super("ListTracks", "List all tracks on the platform", "/%s listtracks", Permission.LIST_TRACKS, Predicates.alwaysFalse(), null);
|
||||
public ListTracks(LocaleManager locale) {
|
||||
super(CommandSpec.LIST_TRACKS.spec(locale), "ListTracks", Permission.LIST_TRACKS, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -25,18 +25,19 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
|
||||
@@ -44,10 +45,8 @@ import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
|
||||
import java.util.List;
|
||||
|
||||
public class TrackAppend extends SubCommand<Track> {
|
||||
public TrackAppend() {
|
||||
super("append", "Appends a group onto the end of the track", Permission.TRACK_APPEND, Predicates.not(1),
|
||||
Arg.list(Arg.create("group", true, "the group to append"))
|
||||
);
|
||||
public TrackAppend(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_APPEND.spec(locale), "append", Permission.TRACK_APPEND, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -29,18 +29,20 @@ import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TrackClear extends SubCommand<Track> {
|
||||
public TrackClear() {
|
||||
super("clear", "Clears the groups on the track", Permission.TRACK_CLEAR, Predicates.alwaysFalse(), null);
|
||||
public TrackClear(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_CLEAR.spec(locale), "clear", Permission.TRACK_CLEAR, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -26,26 +26,25 @@
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TrackClone extends SubCommand<Track> {
|
||||
public TrackClone() {
|
||||
super("clone", "Clone the track", Permission.TRACK_CLONE, Predicates.not(1),
|
||||
Arg.list(Arg.create("name", true, "the name of the track to clone onto"))
|
||||
);
|
||||
public TrackClone(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_CLONE.spec(locale), "clone", Permission.TRACK_CLONE, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -30,17 +30,19 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TrackInfo extends SubCommand<Track> {
|
||||
public TrackInfo() {
|
||||
super("info", "Gives info about the track", Permission.TRACK_INFO, Predicates.alwaysFalse(), null);
|
||||
public TrackInfo(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_INFO.spec(locale), "info", Permission.TRACK_INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -25,18 +25,19 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
|
||||
@@ -44,13 +45,8 @@ import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
|
||||
import java.util.List;
|
||||
|
||||
public class TrackInsert extends SubCommand<Track> {
|
||||
public TrackInsert() {
|
||||
super("insert", "Inserts a group at a given position along the track", Permission.TRACK_INSERT, Predicates.not(2),
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to insert"),
|
||||
Arg.create("position", true, "the position to insert the group at (the first position on the track is 1)")
|
||||
)
|
||||
);
|
||||
public TrackInsert(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_INSERT.spec(locale), "insert", Permission.TRACK_INSERT, Predicates.not(2));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+12
-10
@@ -30,23 +30,25 @@ import com.google.common.collect.ImmutableList;
|
||||
import me.lucko.luckperms.common.commands.abstraction.Command;
|
||||
import me.lucko.luckperms.common.commands.abstraction.MainCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class TrackMainCommand extends MainCommand<Track> {
|
||||
public TrackMainCommand() {
|
||||
super("Track", "Track commands", "/%s track <track>", 2, ImmutableList.<Command<Track, ?>>builder()
|
||||
.add(new TrackInfo())
|
||||
.add(new TrackAppend())
|
||||
.add(new TrackInsert())
|
||||
.add(new TrackRemove())
|
||||
.add(new TrackClear())
|
||||
.add(new TrackRename())
|
||||
.add(new TrackClone())
|
||||
public TrackMainCommand(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK.spec(locale), "Track", 2, ImmutableList.<Command<Track, ?>>builder()
|
||||
.add(new TrackInfo(locale))
|
||||
.add(new TrackAppend(locale))
|
||||
.add(new TrackInsert(locale))
|
||||
.add(new TrackRemove(locale))
|
||||
.add(new TrackClear(locale))
|
||||
.add(new TrackRename(locale))
|
||||
.add(new TrackClone(locale))
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -25,17 +25,18 @@
|
||||
|
||||
package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.exceptions.ObjectLacksException;
|
||||
@@ -43,10 +44,8 @@ import me.lucko.luckperms.exceptions.ObjectLacksException;
|
||||
import java.util.List;
|
||||
|
||||
public class TrackRemove extends SubCommand<Track> {
|
||||
public TrackRemove() {
|
||||
super("remove", "Removes a group from the track", Permission.TRACK_REMOVE, Predicates.not(1),
|
||||
Arg.list(Arg.create("group", true, "the group to remove"))
|
||||
);
|
||||
public TrackRemove(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_REMOVE.spec(locale), "remove", Permission.TRACK_REMOVE, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -27,26 +27,25 @@ package me.lucko.luckperms.common.commands.impl.track;
|
||||
|
||||
import me.lucko.luckperms.api.event.cause.CreationCause;
|
||||
import me.lucko.luckperms.api.event.cause.DeletionCause;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class TrackRename extends SubCommand<Track> {
|
||||
public TrackRename() {
|
||||
super("rename", "Rename the track", Permission.TRACK_RENAME, Predicates.not(1),
|
||||
Arg.list(Arg.create("name", true, "the new name"))
|
||||
);
|
||||
public TrackRename(LocaleManager locale) {
|
||||
super(CommandSpec.TRACK_RENAME.spec(locale), "rename", Permission.TRACK_RENAME, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -27,7 +27,6 @@ package me.lucko.luckperms.common.commands.impl.user;
|
||||
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
@@ -35,13 +34,15 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.exceptions.ObjectLacksException;
|
||||
@@ -51,13 +52,8 @@ import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class UserDemote extends SubCommand<User> {
|
||||
public UserDemote() {
|
||||
super("demote", "Demotes the user down a track", Permission.USER_DEMOTE, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to demote the user down"),
|
||||
Arg.create("context...", false, "the contexts to demote the user in")
|
||||
)
|
||||
);
|
||||
public UserDemote(LocaleManager locale) {
|
||||
super(CommandSpec.USER_DEMOTE.spec(locale), "demote", Permission.USER_DEMOTE, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -33,9 +33,11 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
@@ -45,8 +47,8 @@ import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class UserInfo extends SubCommand<User> {
|
||||
public UserInfo() {
|
||||
super("info", "Shows info about the user", Permission.USER_INFO, Predicates.alwaysFalse(), null);
|
||||
public UserInfo(LocaleManager locale) {
|
||||
super(CommandSpec.USER_INFO.spec(locale), "info", Permission.USER_INFO, Predicates.alwaysFalse());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
|
||||
+15
-13
@@ -38,26 +38,28 @@ import me.lucko.luckperms.common.commands.impl.generic.permission.CommandPermiss
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
public class UserMainCommand extends MainCommand<User> {
|
||||
public UserMainCommand() {
|
||||
super("User", "User commands", "/%s user <user>", 2, ImmutableList.<Command<User, ?>>builder()
|
||||
.add(new UserInfo())
|
||||
.add(new CommandPermission<>(true))
|
||||
.add(new CommandParent<>(true))
|
||||
.add(new CommandMeta<>(true))
|
||||
.add(new HolderEditor<>(true))
|
||||
.add(new UserSwitchPrimaryGroup())
|
||||
.add(new UserPromote())
|
||||
.add(new UserDemote())
|
||||
.add(new HolderShowTracks<>(true))
|
||||
.add(new HolderClear<>(true))
|
||||
public UserMainCommand(LocaleManager locale) {
|
||||
super(CommandSpec.USER.spec(locale), "User", 2, ImmutableList.<Command<User, ?>>builder()
|
||||
.add(new UserInfo(locale))
|
||||
.add(new CommandPermission<>(locale, true))
|
||||
.add(new CommandParent<>(locale, true))
|
||||
.add(new CommandMeta<>(locale, true))
|
||||
.add(new HolderEditor<>(locale, true))
|
||||
.add(new UserSwitchPrimaryGroup(locale))
|
||||
.add(new UserPromote(locale))
|
||||
.add(new UserDemote(locale))
|
||||
.add(new HolderShowTracks<>(locale, true))
|
||||
.add(new HolderClear<>(locale, true))
|
||||
.build()
|
||||
);
|
||||
}
|
||||
|
||||
@@ -27,7 +27,6 @@ package me.lucko.luckperms.common.commands.impl.user;
|
||||
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.context.MutableContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
@@ -35,13 +34,15 @@ import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.ArgumentUtils;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.DataConstraints;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
import me.lucko.luckperms.exceptions.ObjectLacksException;
|
||||
@@ -51,13 +52,8 @@ import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class UserPromote extends SubCommand<User> {
|
||||
public UserPromote() {
|
||||
super("promote", "Promotes the user up a track", Permission.USER_PROMOTE, Predicates.is(0),
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to promote the user up"),
|
||||
Arg.create("context...", false, "the contexts to promote the user in")
|
||||
)
|
||||
);
|
||||
public UserPromote(LocaleManager locale) {
|
||||
super(CommandSpec.USER_PROMOTE.spec(locale), "promote", Permission.USER_PROMOTE, Predicates.is(0));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
+5
-6
@@ -26,27 +26,26 @@
|
||||
package me.lucko.luckperms.common.commands.impl.user;
|
||||
|
||||
import me.lucko.luckperms.api.context.ContextSet;
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
import me.lucko.luckperms.common.commands.CommandException;
|
||||
import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.abstraction.SubCommand;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.data.LogEntry;
|
||||
import me.lucko.luckperms.common.locale.CommandSpec;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.Predicates;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class UserSwitchPrimaryGroup extends SubCommand<User> {
|
||||
public UserSwitchPrimaryGroup() {
|
||||
super("switchprimarygroup", "Switches the user's primary group", Permission.USER_SWITCHPRIMARYGROUP, Predicates.not(1),
|
||||
Arg.list(Arg.create("group", true, "the group to switch to"))
|
||||
);
|
||||
public UserSwitchPrimaryGroup(LocaleManager locale) {
|
||||
super(CommandSpec.USER_SWITCHPRIMARYGROUP.spec(locale), "switchprimarygroup", Permission.USER_SWITCHPRIMARYGROUP, Predicates.not(1));
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,7 +31,7 @@ import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.api.Tristate;
|
||||
import me.lucko.luckperms.api.context.ContextSet;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
|
||||
@@ -28,11 +28,11 @@ package me.lucko.luckperms.common.data;
|
||||
import me.lucko.luckperms.api.Node;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.core.NodeFactory;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.storage.Storage;
|
||||
import me.lucko.luckperms.common.utils.ProgressLogger;
|
||||
|
||||
@@ -37,8 +37,8 @@ import me.lucko.luckperms.common.commands.CommandResult;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.constants.Constants;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
|
||||
|
||||
@@ -27,12 +27,12 @@ package me.lucko.luckperms.common.data;
|
||||
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.config.ConfigKeys;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.constants.Permission;
|
||||
import me.lucko.luckperms.common.core.model.Group;
|
||||
import me.lucko.luckperms.common.core.model.PermissionHolder;
|
||||
import me.lucko.luckperms.common.core.model.Track;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.plugin.LuckPermsPlugin;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
|
||||
|
||||
@@ -0,0 +1,656 @@
|
||||
/*
|
||||
* This file is part of LuckPerms, licensed under the MIT License.
|
||||
*
|
||||
* Copyright (c) lucko (Luck) <luck@lucko.me>
|
||||
* Copyright (c) contributors
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.locale;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
import lombok.ToString;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* An enumeration of the command defintion/usage messages used in the plugin.
|
||||
*
|
||||
* <p>The values in this enum are only defaults, and are only returned if no value for the key is present in the
|
||||
* {@link LocaleManager}.</p>
|
||||
*/
|
||||
@SuppressWarnings("SpellCheckingInspection")
|
||||
public enum CommandSpec {
|
||||
|
||||
USER("User commands", "/%s user <user>"),
|
||||
GROUP("Group commands", "/%s group <group>"),
|
||||
TRACK("Track commands", "/%s track <track>"),
|
||||
LOG("Log commands", "/%s log"),
|
||||
|
||||
SYNC("Sync changes with the storage", "/%s sync"),
|
||||
INFO("Print general plugin info", "/%s info"),
|
||||
VERBOSE("Manage verbose permission checking", "/%s verbose <true|false> [filter]",
|
||||
Arg.list(
|
||||
Arg.create("on|record|off|paste", true, "whether to enable/disable logging, or to paste the logged output"),
|
||||
Arg.create("filter", false, "the filter to match entries against")
|
||||
)
|
||||
),
|
||||
TREE("Generate a tree view of permissions", "/%s tree [selection] [max level] [player]",
|
||||
Arg.list(
|
||||
Arg.create("selection", false, "the root of the tree. specify \".\" to include all permissions"),
|
||||
Arg.create("max level", false, "how many branch levels should be returned"),
|
||||
Arg.create("player", false, "the name of an online player to check against")
|
||||
)
|
||||
),
|
||||
SEARCH("Search for users/groups with a specific permission", "/%s search <permission>",
|
||||
Arg.list(
|
||||
Arg.create("permission", true, "the permission to search for"),
|
||||
Arg.create("page", false, "the page to view")
|
||||
)
|
||||
),
|
||||
CHECK("Perform a standard permission check on an online player", "/%s check <user> <permission>",
|
||||
Arg.list(
|
||||
Arg.create("user", true, "the user to check"),
|
||||
Arg.create("permission", true, "the permission to check for")
|
||||
)
|
||||
),
|
||||
NETWORK_SYNC("Sync changes with the storage and request that all other servers on the network do the same", "/%s networksync"),
|
||||
IMPORT("Import data from a file", "/%s import <file>",
|
||||
Arg.list(
|
||||
Arg.create("file", true, "the file to import from")
|
||||
)
|
||||
),
|
||||
EXPORT("Export data to a file", "/%s export <file>",
|
||||
Arg.list(
|
||||
Arg.create("file", true, "the file to export to")
|
||||
)
|
||||
),
|
||||
RELOAD_CONFIG("Reload some of the config options", "/%s reloadconfig"),
|
||||
BULK_UPDATE("Execute bulk change queries on all data", "/%s bulkupdate",
|
||||
Arg.list(
|
||||
Arg.create("data type", true, "the type of data being changed. ('all', 'users' or 'groups')"),
|
||||
Arg.create("action", true, "the action to perform on the data. ('update' or 'delete')"),
|
||||
Arg.create("action field", false, "the field to act upon. only required for 'update'. ('permission', 'server' or 'world')"),
|
||||
Arg.create("action value", false, "the value to replace with. only required for 'update'."),
|
||||
Arg.create("constraint...", false, "the constraints required for the update")
|
||||
)
|
||||
),
|
||||
MIGRATION("Migration commands", "/%s migration"),
|
||||
APPLY_EDITS("Applies permission changes made from the web editor", "/%s applyedits <code> [target]",
|
||||
Arg.list(
|
||||
Arg.create("code", true, "the unique code for the data"),
|
||||
Arg.create("target", false, "who to apply the data to")
|
||||
)
|
||||
),
|
||||
|
||||
CREATE_GROUP("Create a new group", "/%s creategroup <group>",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the group")
|
||||
)
|
||||
),
|
||||
DELETE_GROUP("Delete a group", "/%s deletegroup <group>",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the group")
|
||||
)
|
||||
),
|
||||
LIST_GROUPS("List all groups on the platform", "/%s listgroups"),
|
||||
|
||||
CREATE_TRACK("Create a new track", "/%s createtrack <track>",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the track")
|
||||
)
|
||||
),
|
||||
DELETE_TRACK("Delete a track", "/%s deletetrack <track>",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the track")
|
||||
)
|
||||
),
|
||||
LIST_TRACKS("List all tracks on the platform", "/%s listtracks"),
|
||||
|
||||
USER_INFO("Shows info about the user"),
|
||||
USER_SWITCHPRIMARYGROUP("Switches the user's primary group",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to switch to")
|
||||
)
|
||||
),
|
||||
USER_PROMOTE("Promotes the user up a track",
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to promote the user up"),
|
||||
Arg.create("context...", false, "the contexts to promote the user in")
|
||||
)
|
||||
),
|
||||
USER_DEMOTE("Demotes the user down a track",
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to demote the user down"),
|
||||
Arg.create("context...", false, "the contexts to demote the user in")
|
||||
)
|
||||
),
|
||||
|
||||
GROUP_INFO("Gives info about the group"),
|
||||
GROUP_LISTMEMBERS("Show the users/groups who inherit from this group",
|
||||
Arg.list(
|
||||
Arg.create("page", false, "the page to view")
|
||||
)
|
||||
),
|
||||
GROUP_SETWEIGHT("Set the groups weight",
|
||||
Arg.list(
|
||||
Arg.create("weight", true, "the weight to set")
|
||||
)
|
||||
),
|
||||
GROUP_RENAME("Rename the group",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the new name")
|
||||
)
|
||||
),
|
||||
GROUP_CLONE("Clone the group",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the group to clone onto")
|
||||
)
|
||||
),
|
||||
|
||||
HOLDER_EDITOR("Opens the web permission editor"),
|
||||
HOLDER_SHOWTRACKS("Lists the tracks that the object is on"),
|
||||
HOLDER_CLEAR("Removes all permissions, parents and meta",
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
|
||||
PERMISSION("Edit permissions"),
|
||||
PARENT("Edit inheritances"),
|
||||
META("Edit metadata values"),
|
||||
|
||||
PERMISSION_INFO("Lists the permission nodes the object has",
|
||||
Arg.list(
|
||||
Arg.create("page", false, "the page to view"),
|
||||
Arg.create("filter", false, "the string to filter by")
|
||||
)
|
||||
),
|
||||
PERMISSION_SET("Sets a permission for the object",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to set"),
|
||||
Arg.create("true|false", false, "the value of the node"),
|
||||
Arg.create("context...", false, "the contexts to add the permission in")
|
||||
)
|
||||
),
|
||||
PERMISSION_UNSET("Unsets a permission for the object",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the permission in")
|
||||
)
|
||||
),
|
||||
PERMISSION_SETTEMP("Sets a permission for the object temporarily",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to set"),
|
||||
Arg.create("true|false", false, "the value of the node"),
|
||||
Arg.create("duration", true, "the duration until the permission node expires"),
|
||||
Arg.create("context...", false, "the contexts to add the permission in")
|
||||
)
|
||||
),
|
||||
PERMISSION_UNSETTEMP("Unsets a temporary permission for the object",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the permission in")
|
||||
)
|
||||
),
|
||||
PERMISSION_CHECK("Checks to see if the object has a certain permission node",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to check for"),
|
||||
Arg.create("context...", false, "the contexts to check in")
|
||||
)
|
||||
),
|
||||
PERMISSION_CHECK_INHERITS("Checks to see if the object inherits a certain permission node",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to check for"),
|
||||
Arg.create("context...", false, "the contexts to check in")
|
||||
)
|
||||
),
|
||||
|
||||
PARENT_INFO("Lists the groups that this object inherits from"),
|
||||
PARENT_SET("Removes all other groups the object inherits already and adds them to the one given",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to set to"),
|
||||
Arg.create("context...", false, "the contexts to set the group in")
|
||||
)
|
||||
),
|
||||
PARENT_ADD("Sets another group for the object to inherit permissions from",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to inherit from"),
|
||||
Arg.create("context...", false, "the contexts to inherit the group in")
|
||||
)
|
||||
),
|
||||
PARENT_REMOVE("Removes a previously set inheritance rule",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to remove"),
|
||||
Arg.create("context...", false, "the contexts to remove the group in")
|
||||
)
|
||||
),
|
||||
PARENT_SET_TRACK("Removes all other groups the object inherits from already on the given track and adds them to the one given",
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to set on"),
|
||||
Arg.create("group", true, "the group to set to, or a number relating to the position of the group on the given track"),
|
||||
Arg.create("context...", false, "the contexts to set the group in")
|
||||
)
|
||||
),
|
||||
PARENT_ADD_TEMP("Sets another group for the object to inherit permissions from temporarily",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to inherit from"),
|
||||
Arg.create("duration", true, "the duration of the group membership"),
|
||||
Arg.create("context...", false, "the contexts to inherit the group in")
|
||||
)
|
||||
),
|
||||
PARENT_REMOVE_TEMP("Removes a previously set temporary inheritance rule",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to remove"),
|
||||
Arg.create("context...", false, "the contexts to remove the group in")
|
||||
)
|
||||
),
|
||||
PARENT_CLEAR("Clears all parents",
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
PARENT_CLEAR_TRACK("Clears all parents on a given track",
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the track to remove on"),
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
|
||||
META_INFO("Shows all chat meta"),
|
||||
META_SET("Sets a meta value",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to set"),
|
||||
Arg.create("value", true, "the value to set"),
|
||||
Arg.create("context...", false, "the contexts to add the meta pair in")
|
||||
)
|
||||
),
|
||||
META_UNSET("Unsets a meta value",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the meta pair in")
|
||||
)
|
||||
),
|
||||
META_SETTEMP("Sets a meta value temporarily",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to set"),
|
||||
Arg.create("value", true, "the value to set"),
|
||||
Arg.create("duration", true, "the duration until the meta value expires"),
|
||||
Arg.create("context...", false, "the contexts to add the meta pair in")
|
||||
)
|
||||
),
|
||||
META_UNSETTEMP("Unsets a temporary meta value",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to unset"),
|
||||
Arg.create("context...", false, "the contexts to remove the meta pair in")
|
||||
)
|
||||
),
|
||||
META_ADDPREFIX("Adds a prefix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the prefix at"),
|
||||
Arg.create("prefix", true, "the prefix string"),
|
||||
Arg.create("context...", false, "the contexts to add the prefix in")
|
||||
)
|
||||
),
|
||||
META_ADDSUFFIX("Adds a suffix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the suffix at"),
|
||||
Arg.create("suffix", true, "the suffix string"),
|
||||
Arg.create("context...", false, "the contexts to add the suffix in")
|
||||
)
|
||||
),
|
||||
META_REMOVEPREFIX("Removes a prefix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the prefix at"),
|
||||
Arg.create("prefix", false, "the prefix string"),
|
||||
Arg.create("context...", false, "the contexts to remove the prefix in")
|
||||
)
|
||||
),
|
||||
META_REMOVESUFFIX("Removes a suffix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the suffix at"),
|
||||
Arg.create("suffix", false, "the suffix string"),
|
||||
Arg.create("context...", false, "the contexts to remove the suffix in")
|
||||
)
|
||||
),
|
||||
META_ADDTEMP_PREFIX("Adds a prefix temporarily",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the prefix at"),
|
||||
Arg.create("prefix", true, "the prefix string"),
|
||||
Arg.create("duration", true, "the duration until the prefix expires"),
|
||||
Arg.create("context...", false, "the contexts to add the prefix in")
|
||||
)
|
||||
),
|
||||
META_ADDTEMP_SUFFIX("Adds a suffix temporarily",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to add the suffix at"),
|
||||
Arg.create("suffix", true, "the suffix string"),
|
||||
Arg.create("duration", true, "the duration until the suffix expires"),
|
||||
Arg.create("context...", false, "the contexts to add the suffix in")
|
||||
)
|
||||
),
|
||||
META_REMOVETEMP_PREFIX("Removes a temporary prefix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the prefix at"),
|
||||
Arg.create("prefix", false, "the prefix string"),
|
||||
Arg.create("context...", false, "the contexts to remove the prefix in")
|
||||
)
|
||||
),
|
||||
META_REMOVETEMP_SUFFIX("Removes a temporary suffix",
|
||||
Arg.list(
|
||||
Arg.create("priority", true, "the priority to remove the suffix at"),
|
||||
Arg.create("suffix", false, "the suffix string"),
|
||||
Arg.create("context...", false, "the contexts to remove the suffix in")
|
||||
)
|
||||
),
|
||||
META_CLEAR("Clears all chat meta",
|
||||
Arg.list(
|
||||
Arg.create("context...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
|
||||
TRACK_INFO("Gives info about the track"),
|
||||
TRACK_APPEND("Appends a group onto the end of the track",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to append")
|
||||
)
|
||||
),
|
||||
TRACK_INSERT("Inserts a group at a given position along the track",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to insert"),
|
||||
Arg.create("position", true, "the position to insert the group at (the first position on the track is 1)")
|
||||
)
|
||||
),
|
||||
TRACK_REMOVE("Removes a group from the track",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the group to remove")
|
||||
)
|
||||
),
|
||||
TRACK_CLEAR("Clears the groups on the track"),
|
||||
TRACK_RENAME("Rename the track",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the new name")
|
||||
)
|
||||
),
|
||||
TRACK_CLONE("Clone the track",
|
||||
Arg.list(
|
||||
Arg.create("name", true, "the name of the track to clone onto")
|
||||
)
|
||||
),
|
||||
|
||||
LOG_RECENT("View recent actions",
|
||||
Arg.list(
|
||||
Arg.create("user", false, "the name/uuid of the user to filter by"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
),
|
||||
LOG_SEARCH("Search the log for an entry",
|
||||
Arg.list(
|
||||
Arg.create("query", true, "the query to search by"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
),
|
||||
LOG_NOTIFY("Toggle log notifications",
|
||||
Arg.list(
|
||||
Arg.create("on|off", false, "whether to toggle on or off")
|
||||
)
|
||||
),
|
||||
LOG_USER_HISTORY("View a user's history",
|
||||
Arg.list(
|
||||
Arg.create("user", true, "the name/uuid of the user"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
),
|
||||
LOG_GROUP_HISTORY("View an group's history",
|
||||
Arg.list(
|
||||
Arg.create("group", true, "the name of the group"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
),
|
||||
LOG_TRACK_HISTORY("View a track's history",
|
||||
Arg.list(
|
||||
Arg.create("track", true, "the name of the track"),
|
||||
Arg.create("page", false, "the page number to view")
|
||||
)
|
||||
),
|
||||
|
||||
SPONGE("Edit extra Sponge data", "/%s sponge <collection> <subject>",
|
||||
Arg.list(
|
||||
Arg.create("collection", true, "the collection to query"),
|
||||
Arg.create("subject", true, "the subject to modify")
|
||||
)
|
||||
),
|
||||
SPONGE_PERMISSION_INFO("Shows info about the subject's permissions",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
SPONGE_PERMISSION_SET("Sets a permission for the Subject",
|
||||
Arg.list(
|
||||
Arg.create("node", true, "the permission node to set"),
|
||||
Arg.create("tristate", true, "the value to set the permission to"),
|
||||
Arg.create("contexts...", false, "the contexts to set the permission in")
|
||||
)
|
||||
),
|
||||
SPONGE_PERMISSION_CLEAR("Clears the Subjects permissions",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to clear permissions in")
|
||||
)
|
||||
),
|
||||
SPONGE_PARENT_INFO("Shows info about the subject's parents",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
SPONGE_PARENT_ADD("Adds a parent to the Subject",
|
||||
Arg.list(
|
||||
Arg.create("collection", true, "the subject collection where the parent Subject is"),
|
||||
Arg.create("subject", true, "the name of the parent Subject"),
|
||||
Arg.create("contexts...", false, "the contexts to add the parent in")
|
||||
)
|
||||
),
|
||||
SPONGE_PARENT_REMOVE("Removes a parent from the Subject",
|
||||
Arg.list(
|
||||
Arg.create("collection", true, "the subject collection where the parent Subject is"),
|
||||
Arg.create("subject", true, "the name of the parent Subject"),
|
||||
Arg.create("contexts...", false, "the contexts to remove the parent in")
|
||||
)
|
||||
),
|
||||
SPONGE_PARENT_CLEAR("Clears the Subjects parents",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to clear parents in")
|
||||
)
|
||||
),
|
||||
SPONGE_OPTION_INFO("Shows info about the subject's options",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to filter by")
|
||||
)
|
||||
),
|
||||
SPONGE_OPTION_SET("Sets an option for the Subject",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to set"),
|
||||
Arg.create("value", true, "the value to set the key to"),
|
||||
Arg.create("contexts...", false, "the contexts to set the option in")
|
||||
)
|
||||
),
|
||||
SPONGE_OPTION_UNSET("Unsets an option for the Subject",
|
||||
Arg.list(
|
||||
Arg.create("key", true, "the key to unset"),
|
||||
Arg.create("contexts...", false, "the contexts to unset the key in")
|
||||
)
|
||||
),
|
||||
SPONGE_OPTION_CLEAR("Clears the Subjects options",
|
||||
Arg.list(
|
||||
Arg.create("contexts...", false, "the contexts to clear options in")
|
||||
)
|
||||
),
|
||||
|
||||
MIGRATION_COMMAND("Migration command"),
|
||||
MIGRATION_GROUPMANAGER("Migration command",
|
||||
Arg.list(
|
||||
Arg.create("migrate as global", true, "if world permissions should be ignored, and just migrated as global")
|
||||
)
|
||||
),
|
||||
MIGRATION_POWERFULPERMS("Migration command",
|
||||
Arg.list(
|
||||
Arg.create("address", true, "the address of the PP database"),
|
||||
Arg.create("database", true, "the name of the PP database"),
|
||||
Arg.create("username", true, "the username to log into the DB"),
|
||||
Arg.create("password", true, "the password to log into the DB"),
|
||||
Arg.create("db table", true, "the name of the PP table where player data is stored")
|
||||
)
|
||||
);
|
||||
|
||||
private final String description;
|
||||
private final String usage;
|
||||
private final List<Arg> args;
|
||||
|
||||
CommandSpec(String description, String usage, List<Arg> args) {
|
||||
this.description = description;
|
||||
this.usage = usage;
|
||||
this.args = args;
|
||||
}
|
||||
|
||||
CommandSpec(String description, String usage) {
|
||||
this(description, usage, null);
|
||||
}
|
||||
|
||||
CommandSpec(String description) {
|
||||
this(description, null, null);
|
||||
}
|
||||
|
||||
CommandSpec(String description, List<Arg> args) {
|
||||
this(description, null, args);
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a {@link LocalizedSpec} for the spec using the platforms locale manager.
|
||||
*
|
||||
* @param localeManager the locale manager to use for the spec
|
||||
* @return a localized spec instance
|
||||
*/
|
||||
public LocalizedSpec spec(LocaleManager localeManager) {
|
||||
return new SimpleLocalizedSpec(this, localeManager);
|
||||
}
|
||||
|
||||
/**
|
||||
* The localized data for a {@link CommandSpec}.
|
||||
*/
|
||||
@Getter
|
||||
@ToString
|
||||
@AllArgsConstructor
|
||||
public static final class CommandSpecData {
|
||||
private final String description;
|
||||
private final String usage;
|
||||
private final Map<String, String> args;
|
||||
}
|
||||
|
||||
private static final class SimpleLocalizedSpec implements LocalizedSpec {
|
||||
|
||||
@Getter
|
||||
private final LocaleManager localeManager;
|
||||
|
||||
private final CommandSpec spec;
|
||||
|
||||
public SimpleLocalizedSpec(CommandSpec spec, LocaleManager localeManager) {
|
||||
this.localeManager = localeManager;
|
||||
this.spec = spec;
|
||||
}
|
||||
|
||||
public String description() {
|
||||
CommandSpecData translation = localeManager.getTranslation(spec);
|
||||
if (translation != null && translation.getDescription() != null) {
|
||||
return translation.getDescription();
|
||||
}
|
||||
|
||||
// fallback
|
||||
return spec.description;
|
||||
}
|
||||
|
||||
public String usage() {
|
||||
CommandSpecData translation = localeManager.getTranslation(spec);
|
||||
if (translation != null && translation.getUsage() != null) {
|
||||
return translation.getUsage();
|
||||
}
|
||||
|
||||
// fallback
|
||||
return spec.usage;
|
||||
}
|
||||
|
||||
public List<Arg> args() {
|
||||
CommandSpecData translation = localeManager.getTranslation(spec);
|
||||
if (translation == null || translation.getArgs() == null) {
|
||||
// fallback
|
||||
return spec.args;
|
||||
}
|
||||
|
||||
List<Arg> args = new ArrayList<>(spec.args);
|
||||
ListIterator<Arg> it = args.listIterator();
|
||||
while (it.hasNext()) {
|
||||
Arg next = it.next();
|
||||
String s = translation.getArgs().get(next.getName());
|
||||
|
||||
// if a translation for the given arg key is present, apply the new description.
|
||||
if (s != null) {
|
||||
it.set(Arg.create(next.getName(), next.isRequired(), s));
|
||||
}
|
||||
}
|
||||
|
||||
return ImmutableList.copyOf(args);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Prints this CommandSpec enum in a yml format, for reading by the {@link me.lucko.luckperms.common.locale.LocaleManager}
|
||||
* @param args not needed
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
System.out.println("command-specs:");
|
||||
|
||||
for (CommandSpec spec : values()) {
|
||||
String key = spec.name().replace('_', '-').toLowerCase();
|
||||
|
||||
System.out.println(" " + key + ":");
|
||||
|
||||
if (spec.description != null) {
|
||||
System.out.println(" description: \"" + spec.description.replace("\"", "\\\"") + "\"");
|
||||
}
|
||||
if (spec.usage != null) {
|
||||
System.out.println(" usage: \"" + spec.usage.replace("\"", "\\\"") + "\"");
|
||||
}
|
||||
|
||||
if (spec.args != null && !spec.args.isEmpty()) {
|
||||
System.out.println(" args:");
|
||||
for (Arg arg : spec.args) {
|
||||
System.out.println(" \"" + arg.getName() + "\": \"" + arg.getDescription().replace("\"", "\\\"") + "\"");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -25,8 +25,6 @@
|
||||
|
||||
package me.lucko.luckperms.common.locale;
|
||||
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
/**
|
||||
@@ -40,9 +38,18 @@ public interface LocaleManager {
|
||||
|
||||
/**
|
||||
* Gets a translation for a given message key
|
||||
*
|
||||
* @param key the key
|
||||
* @return the translation, or null if there isn't a translation available.
|
||||
* @return the translation, or null if there isn't any translation available.
|
||||
*/
|
||||
String getTranslation(Message key);
|
||||
|
||||
/**
|
||||
* Gets a translation for a given command spec key
|
||||
*
|
||||
* @param key the key
|
||||
* @return the translation data, or null if there isn't any translation available.
|
||||
*/
|
||||
CommandSpec.CommandSpecData getTranslation(CommandSpec key);
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,50 @@
|
||||
/*
|
||||
* This file is part of LuckPerms, licensed under the MIT License.
|
||||
*
|
||||
* Copyright (c) lucko (Luck) <luck@lucko.me>
|
||||
* Copyright (c) contributors
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
* of this software and associated documentation files (the "Software"), to deal
|
||||
* in the Software without restriction, including without limitation the rights
|
||||
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
* copies of the Software, and to permit persons to whom the Software is
|
||||
* furnished to do so, subject to the following conditions:
|
||||
*
|
||||
* The above copyright notice and this permission notice shall be included in all
|
||||
* copies or substantial portions of the Software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.locale;
|
||||
|
||||
import me.lucko.luckperms.common.commands.Arg;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Represents a localized instance of a {@link CommandSpec}.
|
||||
*/
|
||||
public interface LocalizedSpec {
|
||||
|
||||
/**
|
||||
* Gets the locale manager used to translate the {@link CommandSpec}.
|
||||
*
|
||||
* @return the locale manager
|
||||
*/
|
||||
LocaleManager getLocaleManager();
|
||||
|
||||
String description();
|
||||
|
||||
String usage();
|
||||
|
||||
List<Arg> args();
|
||||
|
||||
}
|
||||
+7
-7
@@ -23,15 +23,20 @@
|
||||
* SOFTWARE.
|
||||
*/
|
||||
|
||||
package me.lucko.luckperms.common.constants;
|
||||
package me.lucko.luckperms.common.locale;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
|
||||
/**
|
||||
* An enumeration of some of the messages used within the plugin.
|
||||
*
|
||||
* <p>The values in this enum are only defaults, and are only returned if no value for the key is present in the
|
||||
* {@link LocaleManager}.</p>
|
||||
*/
|
||||
@SuppressWarnings("SpellCheckingInspection")
|
||||
@AllArgsConstructor
|
||||
public enum Message {
|
||||
@@ -425,11 +430,6 @@ public enum Message {
|
||||
private String message;
|
||||
private boolean showPrefix;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return asString(null);
|
||||
}
|
||||
|
||||
public String asString(LocaleManager localeManager, Object... objects) {
|
||||
String prefix = null;
|
||||
if (localeManager != null) {
|
||||
@@ -25,8 +25,6 @@
|
||||
|
||||
package me.lucko.luckperms.common.locale;
|
||||
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class NoopLocaleManager implements LocaleManager {
|
||||
@@ -46,4 +44,9 @@ public class NoopLocaleManager implements LocaleManager {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CommandSpec.CommandSpecData getTranslation(CommandSpec key) {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -27,8 +27,6 @@ package me.lucko.luckperms.common.locale;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
|
||||
import org.yaml.snakeyaml.Yaml;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
@@ -39,28 +37,83 @@ import java.util.Map;
|
||||
|
||||
public class SimpleLocaleManager implements LocaleManager {
|
||||
|
||||
private Map<String, String> translations = null;
|
||||
private Map<Message, String> messages = ImmutableMap.of();
|
||||
private Map<CommandSpec, CommandSpec.CommandSpecData> commands = ImmutableMap.of();
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public void loadFromFile(File file) throws Exception {
|
||||
try (BufferedReader reader = Files.newBufferedReader(file.toPath(), StandardCharsets.UTF_8)) {
|
||||
translations = ImmutableMap.copyOf((Map<String, String>) new Yaml().load(reader));
|
||||
ImmutableMap.Builder<Message, String> messages = ImmutableMap.builder();
|
||||
ImmutableMap.Builder<CommandSpec, CommandSpec.CommandSpecData> commands = ImmutableMap.builder();
|
||||
|
||||
Map<String, Object> data = (Map<String, Object>) new Yaml().load(reader);
|
||||
for (Map.Entry<String, Object> entry : data.entrySet()) {
|
||||
if (entry.getKey() == null || entry.getKey().isEmpty() || entry.getValue() == null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// might be a message
|
||||
if (entry.getValue() instanceof String) {
|
||||
String key = entry.getKey().toUpperCase().replace('-', '_');
|
||||
String value = (String) entry.getValue();
|
||||
|
||||
try {
|
||||
messages.put(Message.valueOf(key), value);
|
||||
} catch (IllegalArgumentException e) {
|
||||
// ignore
|
||||
}
|
||||
}
|
||||
|
||||
// might be the entries for command specifications - take care for malformed entries of differing types.
|
||||
if (entry.getKey().equals("command-specs") && entry.getValue() instanceof Map) {
|
||||
Map<?, ?> commandKeys = (Map) entry.getValue();
|
||||
|
||||
// key is the command id, value is a map of the commands attributes
|
||||
for (Map.Entry commandKey : commandKeys.entrySet()) {
|
||||
|
||||
// just try catch, can't be bothered with safe casting every single value.
|
||||
try {
|
||||
String id = (String) commandKey.getKey();
|
||||
Map<String, Object> attributes = (Map<String, Object>) commandKey.getValue();
|
||||
CommandSpec spec = CommandSpec.valueOf(id.toUpperCase().replace('-', '_'));
|
||||
|
||||
String description = (String) attributes.get("description");
|
||||
String usage = (String) attributes.get("usage");
|
||||
Map<String, String> args = (Map<String, String>) attributes.get("args");
|
||||
if (args.isEmpty()) {
|
||||
args = null;
|
||||
}
|
||||
|
||||
CommandSpec.CommandSpecData specData = new CommandSpec.CommandSpecData(description, usage, args == null ? null : ImmutableMap.copyOf(args));
|
||||
commands.put(spec, specData);
|
||||
|
||||
} catch (IllegalArgumentException e) {
|
||||
// ignore
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
this.messages = messages.build();
|
||||
this.commands = commands.build();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSize() {
|
||||
return translations == null ? 0 : translations.size();
|
||||
return messages.size() + commands.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTranslation(Message key) {
|
||||
if (translations == null) {
|
||||
return null;
|
||||
}
|
||||
return messages.get(key);
|
||||
}
|
||||
|
||||
String k = key.name().toLowerCase().replace('_', '-');
|
||||
return translations.get(k);
|
||||
@Override
|
||||
public CommandSpec.CommandSpecData getTranslation(CommandSpec key) {
|
||||
return commands.get(key);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -36,11 +36,11 @@ import me.lucko.luckperms.common.commands.abstraction.Command;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.commands.utils.Util;
|
||||
import me.lucko.luckperms.common.config.LuckPermsConfiguration;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.contexts.ContextManager;
|
||||
import me.lucko.luckperms.common.core.UuidCache;
|
||||
import me.lucko.luckperms.common.core.model.User;
|
||||
import me.lucko.luckperms.common.locale.LocaleManager;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.managers.GroupManager;
|
||||
import me.lucko.luckperms.common.managers.TrackManager;
|
||||
import me.lucko.luckperms.common.managers.UserManager;
|
||||
|
||||
@@ -29,7 +29,7 @@ import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
|
||||
import me.lucko.luckperms.exceptions.ObjectLacksException;
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ import lombok.AllArgsConstructor;
|
||||
|
||||
import me.lucko.luckperms.api.Logger;
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
|
||||
@AllArgsConstructor
|
||||
public class SenderLogger implements Logger {
|
||||
|
||||
@@ -30,7 +30,7 @@ import lombok.RequiredArgsConstructor;
|
||||
import com.google.common.collect.ImmutableList;
|
||||
|
||||
import me.lucko.luckperms.common.commands.sender.Sender;
|
||||
import me.lucko.luckperms.common.constants.Message;
|
||||
import me.lucko.luckperms.common.locale.Message;
|
||||
import me.lucko.luckperms.common.utils.DateUtil;
|
||||
import me.lucko.luckperms.common.utils.PasteUtils;
|
||||
import me.lucko.luckperms.common.utils.Scripting;
|
||||
|
||||
Reference in New Issue
Block a user