From 357717886e16ea2f24203f43959fdae36327443e Mon Sep 17 00:00:00 2001 From: Luck Date: Mon, 30 Oct 2017 21:06:45 +0000 Subject: [PATCH] Refactor the log creation process --- .../common/actionlog/ExtendedLogEntry.java | 35 +++++++++++++++++++ .../impl/generic/meta/MetaAddChatMeta.java | 3 +- .../generic/meta/MetaAddTempChatMeta.java | 3 +- .../commands/impl/generic/meta/MetaClear.java | 3 +- .../impl/generic/meta/MetaRemoveChatMeta.java | 8 +++-- .../generic/meta/MetaRemoveTempChatMeta.java | 8 +++-- .../commands/impl/generic/meta/MetaSet.java | 3 +- .../impl/generic/meta/MetaSetTemp.java | 3 +- .../commands/impl/generic/meta/MetaUnset.java | 3 +- .../impl/generic/meta/MetaUnsetTemp.java | 3 +- .../impl/generic/other/HolderClear.java | 13 ++----- .../impl/generic/parent/ParentAdd.java | 3 +- .../impl/generic/parent/ParentAddTemp.java | 3 +- .../impl/generic/parent/ParentClear.java | 3 +- .../impl/generic/parent/ParentClearTrack.java | 3 +- .../impl/generic/parent/ParentRemove.java | 3 +- .../impl/generic/parent/ParentRemoveTemp.java | 3 +- .../impl/generic/parent/ParentSet.java | 3 +- .../impl/generic/parent/ParentSetTrack.java | 3 +- .../generic/permission/PermissionSet.java | 3 +- .../generic/permission/PermissionSetTemp.java | 3 +- .../generic/permission/PermissionUnset.java | 3 +- .../permission/PermissionUnsetTemp.java | 3 +- .../commands/impl/group/CreateGroup.java | 6 +++- .../commands/impl/group/DeleteGroup.java | 6 +++- .../commands/impl/group/GroupClone.java | 6 +++- .../commands/impl/group/GroupRename.java | 6 +++- .../impl/group/GroupSetDisplayName.java | 15 ++++++-- .../commands/impl/group/GroupSetWeight.java | 8 ++++- .../commands/impl/misc/ApplyEditsCommand.java | 5 +++ .../commands/impl/track/CreateTrack.java | 6 +++- .../commands/impl/track/DeleteTrack.java | 7 ++-- .../commands/impl/track/TrackAppend.java | 4 ++- .../commands/impl/track/TrackClear.java | 6 +++- .../commands/impl/track/TrackClone.java | 6 +++- .../commands/impl/track/TrackInsert.java | 4 ++- .../commands/impl/track/TrackRemove.java | 4 ++- .../commands/impl/track/TrackRename.java | 6 +++- .../common/commands/impl/user/UserDemote.java | 4 +-- .../commands/impl/user/UserPromote.java | 5 +-- .../impl/user/UserSwitchPrimaryGroup.java | 3 +- .../common/storage/dao/sql/SqlDao.java | 1 + common/src/main/resources/schema/h2.sql | 2 +- common/src/main/resources/schema/mariadb.sql | 2 +- common/src/main/resources/schema/mysql.sql | 2 +- .../src/main/resources/schema/postgresql.sql | 2 +- common/src/main/resources/schema/sqlite.sql | 2 +- 47 files changed, 161 insertions(+), 78 deletions(-) diff --git a/common/src/main/java/me/lucko/luckperms/common/actionlog/ExtendedLogEntry.java b/common/src/main/java/me/lucko/luckperms/common/actionlog/ExtendedLogEntry.java index 40a7cca04..80a158a37 100644 --- a/common/src/main/java/me/lucko/luckperms/common/actionlog/ExtendedLogEntry.java +++ b/common/src/main/java/me/lucko/luckperms/common/actionlog/ExtendedLogEntry.java @@ -30,6 +30,7 @@ import com.google.gson.JsonObject; import com.google.gson.JsonPrimitive; import me.lucko.luckperms.api.LogEntry; +import me.lucko.luckperms.api.context.ContextSet; import me.lucko.luckperms.common.commands.sender.Sender; import me.lucko.luckperms.common.model.Group; import me.lucko.luckperms.common.model.PermissionHolder; @@ -38,8 +39,11 @@ import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.DateUtil; +import java.util.ArrayList; +import java.util.List; import java.util.Map; import java.util.UUID; +import java.util.stream.Collectors; /** * An extended version of {@link LogEntry}, with helper methods for @@ -127,6 +131,37 @@ public class ExtendedLogEntry extends LogEntry { return this; } + public ExtendedLogEntryBuilder action(Object... args) { + List parts = new ArrayList<>(); + + for (Object o : args) { + + // special formatting for ContextSets instead of just #toString + if (o instanceof ContextSet) { + ContextSet set = (ContextSet) o; + + for (String value : set.getValues("server")) { + parts.add("server=" + value); + } + for (String value : set.getValues("world")) { + parts.add("world=" + value); + } + + for (Map.Entry context : set.toSet()) { + if (context.getKey().equals("server") || context.getKey().equals("world")) { + continue; + } + parts.add(context.getKey() + "=" + context.getValue()); + } + } else { + parts.add(String.valueOf(o)); + } + } + + super.action(parts.stream().collect(Collectors.joining(" "))); + return this; + } + @Override public ExtendedLogEntry build() { if (getTimestamp() == 0L) { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddChatMeta.java index 3724a4bf1..7261b50d5 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddChatMeta.java @@ -51,7 +51,6 @@ import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import java.util.List; -import java.util.stream.Collectors; public class MetaAddChatMeta extends SharedSubCommand { private final ChatMetaType type; @@ -94,7 +93,7 @@ public class MetaAddChatMeta extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta add" + type.name().toLowerCase() + " " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta" , "add" + type.name().toLowerCase(), priority, meta, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddTempChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddTempChatMeta.java index addc3a69f..1a399fc58 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddTempChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaAddTempChatMeta.java @@ -56,7 +56,6 @@ import net.kyori.text.event.HoverEvent; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; public class MetaAddTempChatMeta extends SharedSubCommand { private final ChatMetaType type; @@ -104,7 +103,7 @@ public class MetaAddTempChatMeta extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta addtemp" + type.name().toLowerCase() + " " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta" , "addtemp" + type.name().toLowerCase(), priority, meta, duration, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaClear.java index ba27164d8..a434b3ff6 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaClear.java @@ -44,7 +44,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; public class MetaClear extends SharedSubCommand { public MetaClear(LocaleManager locale) { @@ -109,7 +108,7 @@ public class MetaClear extends SharedSubCommand { } ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta clear " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta", "clear", context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveChatMeta.java index 9ab8a283d..8a73432d9 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveChatMeta.java @@ -51,7 +51,6 @@ import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import java.util.List; -import java.util.stream.Collectors; public class MetaRemoveChatMeta extends SharedSubCommand { private final ChatMetaType type; @@ -92,6 +91,11 @@ public class MetaRemoveChatMeta extends SharedSubCommand { n.getFullContexts().makeImmutable().equals(context.makeImmutable()) ); Message.BULK_REMOVE_CHATMETA_SUCCESS.send(sender, holder.getFriendlyName(), type.name().toLowerCase(), priority, Util.contextSetToString(context)); + + ExtendedLogEntry.build().actor(sender).acted(holder) + .action("meta" , "remove" + type.name().toLowerCase(), priority, "*", context) + .build().submit(plugin, sender); + save(holder, sender, plugin); return CommandResult.SUCCESS; } @@ -108,7 +112,7 @@ public class MetaRemoveChatMeta extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta remove" + type.name().toLowerCase() + " " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta" , "remove" + type.name().toLowerCase(), priority, meta, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveTempChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveTempChatMeta.java index 2f8ec82a0..a6f8468c1 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveTempChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaRemoveTempChatMeta.java @@ -51,7 +51,6 @@ import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import java.util.List; -import java.util.stream.Collectors; public class MetaRemoveTempChatMeta extends SharedSubCommand { private final ChatMetaType type; @@ -92,6 +91,11 @@ public class MetaRemoveTempChatMeta extends SharedSubCommand { n.getFullContexts().makeImmutable().equals(context.makeImmutable()) ); Message.BULK_REMOVE_TEMP_CHATMETA_SUCCESS.send(sender, holder.getFriendlyName(), type.name().toLowerCase(), priority, Util.contextSetToString(context)); + + ExtendedLogEntry.build().actor(sender).acted(holder) + .action("meta" , "removetemp" + type.name().toLowerCase(), priority, "*", context) + .build().submit(plugin, sender); + save(holder, sender, plugin); return CommandResult.SUCCESS; } @@ -108,7 +112,7 @@ public class MetaRemoveTempChatMeta extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta removetemp" + type.name().toLowerCase() + " " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta" , "removetemp" + type.name().toLowerCase(), priority, meta, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSet.java index 82030837c..8b30a00da 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSet.java @@ -49,7 +49,6 @@ import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import java.util.List; -import java.util.stream.Collectors; public class MetaSet extends SharedSubCommand { public MetaSet(LocaleManager locale) { @@ -96,7 +95,7 @@ public class MetaSet extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta set " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta", "set", key, value, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSetTemp.java index 9a7615027..8ea929d50 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaSetTemp.java @@ -53,7 +53,6 @@ import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import java.util.List; -import java.util.stream.Collectors; public class MetaSetTemp extends SharedSubCommand { public MetaSetTemp(LocaleManager locale) { @@ -102,7 +101,7 @@ public class MetaSetTemp extends SharedSubCommand { sender.sendMessage(builder.build()); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta settemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta", "settemp", key, value, duration, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnset.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnset.java index 53ae744ee..9b8a21056 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnset.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnset.java @@ -43,7 +43,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; public class MetaUnset extends SharedSubCommand { public MetaUnset(LocaleManager locale) { @@ -74,7 +73,7 @@ public class MetaUnset extends SharedSubCommand { Message.UNSET_META_SUCCESS.send(sender, key, holder.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta unset " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta", "unset", key, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnsetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnsetTemp.java index 0dc1b5b16..9679f1686 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnsetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/meta/MetaUnsetTemp.java @@ -43,7 +43,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; public class MetaUnsetTemp extends SharedSubCommand { public MetaUnsetTemp(LocaleManager locale) { @@ -74,7 +73,7 @@ public class MetaUnsetTemp extends SharedSubCommand { Message.UNSET_META_TEMP_SUCCESS.send(sender, key, holder.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("meta unsettemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("meta", "unsettemp", key, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/other/HolderClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/other/HolderClear.java index 3c6c5982a..e562e1a06 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/other/HolderClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/other/HolderClear.java @@ -30,6 +30,7 @@ import me.lucko.luckperms.common.actionlog.ExtendedLogEntry; import me.lucko.luckperms.common.commands.ArgumentPermissions; 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.SubCommand; import me.lucko.luckperms.common.commands.sender.Sender; import me.lucko.luckperms.common.commands.utils.ArgumentUtils; @@ -38,14 +39,11 @@ import me.lucko.luckperms.common.constants.CommandPermission; 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.model.Group; import me.lucko.luckperms.common.model.PermissionHolder; -import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; public class HolderClear extends SubCommand { public HolderClear(LocaleManager locale, boolean user) { @@ -82,15 +80,10 @@ public class HolderClear extends SubCommand { } ExtendedLogEntry.build().actor(sender).acted(holder) - .action("clear " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("clear", context) .build().submit(plugin, sender); - if (holder instanceof User) { - save((User) holder, sender, plugin); - } else if (holder instanceof Group) { - save((Group) holder, sender, plugin); - } - + SharedSubCommand.save(holder, sender, plugin); return CommandResult.SUCCESS; } } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAdd.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAdd.java index 674262ebd..04735aff2 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAdd.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAdd.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; @@ -91,7 +90,7 @@ public class ParentAdd extends SharedSubCommand { Message.SET_INHERIT_SUCCESS.send(sender, holder.getFriendlyName(), group.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent add " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "add", group.getName(), context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAddTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAddTemp.java index fea4004a9..865a6a70e 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAddTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentAddTemp.java @@ -51,7 +51,6 @@ import me.lucko.luckperms.common.utils.Predicates; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; @@ -105,7 +104,7 @@ public class ParentAddTemp extends SharedSubCommand { Message.SET_TEMP_INHERIT_SUCCESS.send(sender, holder.getFriendlyName(), group.getFriendlyName(), DateUtil.formatDateDiff(duration), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent addtemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "addtemp", group.getName(), duration, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClear.java index 6183fc1c4..0db1194f9 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClear.java @@ -43,7 +43,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; public class ParentClear extends SharedSubCommand { public ParentClear(LocaleManager locale) { @@ -80,7 +79,7 @@ public class ParentClear extends SharedSubCommand { } ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent clear " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "clear", context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClearTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClearTrack.java index 6b2362a88..c55e04a3e 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClearTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentClearTrack.java @@ -46,7 +46,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getTrackTabComplete; @@ -117,7 +116,7 @@ public class ParentClearTrack extends SharedSubCommand { } ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent cleartrack " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "cleartrack", track.getName(), context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemove.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemove.java index cec00818d..547705a57 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemove.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemove.java @@ -47,7 +47,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; @@ -95,7 +94,7 @@ public class ParentRemove extends SharedSubCommand { Message.UNSET_INHERIT_SUCCESS.send(sender, holder.getFriendlyName(), groupName, Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent remove " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "remove", groupName, context) .build().submit(plugin, sender); if (holder instanceof User) { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemoveTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemoveTemp.java index ab1a6d296..7e4068f12 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemoveTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentRemoveTemp.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; @@ -80,7 +79,7 @@ public class ParentRemoveTemp extends SharedSubCommand { Message.UNSET_TEMP_INHERIT_SUCCESS.send(sender, holder.getFriendlyName(), groupName, Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent removetemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "removetemp", groupName, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSet.java index 96bf93ab5..67c6977ae 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSet.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; @@ -94,7 +93,7 @@ public class ParentSet extends SharedSubCommand { Message.SET_PARENT_SUCCESS.send(sender, holder.getFriendlyName(), group.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent set " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "set", group.getName(), context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSetTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSetTrack.java index 0783fcc1c..8c3db23de 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSetTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/parent/ParentSetTrack.java @@ -46,7 +46,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getGroupTabComplete; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getTrackTabComplete; @@ -131,7 +130,7 @@ public class ParentSetTrack extends SharedSubCommand { Message.SET_TRACK_PARENT_SUCCESS.send(sender, holder.getFriendlyName(), track.getName(), group.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("parent settrack " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("parent", "settrack", track.getName(), groupName, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSet.java index d80d4b7db..b656fe26f 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSet.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getBoolTabComplete; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete; @@ -82,7 +81,7 @@ public class PermissionSet extends SharedSubCommand { Message.SETPERMISSION_SUCCESS.send(sender, node, b, holder.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("permission set " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("permission", "set", node, b, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSetTemp.java index ca3f740bd..bfd4769da 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionSetTemp.java @@ -50,7 +50,6 @@ import me.lucko.luckperms.common.utils.Predicates; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getBoolTabComplete; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete; @@ -90,7 +89,7 @@ public class PermissionSetTemp extends SharedSubCommand { Message.SETPERMISSION_TEMP_SUCCESS.send(sender, node, b, holder.getFriendlyName(), DateUtil.formatDateDiff(duration), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("permission settemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("permission", "settemp", node, b, duration, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnset.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnset.java index 17f0fe22d..8eef511fb 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnset.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnset.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete; @@ -87,7 +86,7 @@ public class PermissionUnset extends SharedSubCommand { Message.UNSETPERMISSION_SUCCESS.send(sender, node, holder.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("permission unset " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("permission", "unset", node, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnsetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnsetTemp.java index 45380ef68..b0f0e875a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnsetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/generic/permission/PermissionUnsetTemp.java @@ -45,7 +45,6 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.utils.Predicates; import java.util.List; -import java.util.stream.Collectors; import static me.lucko.luckperms.common.commands.abstraction.SubCommand.getPermissionTabComplete; @@ -80,7 +79,7 @@ public class PermissionUnsetTemp extends SharedSubCommand { Message.UNSET_TEMP_PERMISSION_SUCCESS.send(sender, node, holder.getFriendlyName(), Util.contextSetToString(context)); ExtendedLogEntry.build().actor(sender).acted(holder) - .action("permission unsettemp " + args.stream().map(ArgumentUtils.WRAPPER).collect(Collectors.joining(" "))) + .action("permission", "unsettemp", node, context) .build().submit(plugin, sender); save(holder, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/CreateGroup.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/CreateGroup.java index 733f24ab6..5535d11eb 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/CreateGroup.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/CreateGroup.java @@ -70,7 +70,11 @@ public class CreateGroup extends SingleCommand { } Message.CREATE_SUCCESS.send(sender, groupName); - ExtendedLogEntry.build().actor(sender).actedName(groupName).entryType(LogEntry.Type.GROUP).action("create").build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).actedName(groupName).entryType(LogEntry.Type.GROUP) + .action("create") + .build().submit(plugin, sender); + return CommandResult.SUCCESS; } } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/DeleteGroup.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/DeleteGroup.java index 9a44be94c..b8f166a78 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/DeleteGroup.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/DeleteGroup.java @@ -79,7 +79,11 @@ public class DeleteGroup extends SingleCommand { } Message.DELETE_SUCCESS.send(sender, group.getFriendlyName()); - ExtendedLogEntry.build().actor(sender).actedName(groupName).entryType(LogEntry.Type.GROUP).action("delete").build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).actedName(groupName).entryType(LogEntry.Type.GROUP) + .action("delete") + .build().submit(plugin, sender); + plugin.getUpdateTaskBuffer().request(); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupClone.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupClone.java index 041363e14..a711f8ea1 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupClone.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupClone.java @@ -77,7 +77,11 @@ public class GroupClone extends SubCommand { newGroup.replaceEnduringNodes(group.getEnduringNodes()); Message.CLONE_SUCCESS.send(sender, group.getName(), newGroup.getName()); - ExtendedLogEntry.build().actor(sender).acted(group).action("clone " + newGroup.getName()).build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).acted(group) + .action("clone", newGroup.getName()) + .build().submit(plugin, sender); + save(newGroup, sender, plugin); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupRename.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupRename.java index ddce076a3..001966e77 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupRename.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupRename.java @@ -80,7 +80,11 @@ public class GroupRename extends SubCommand { newGroup.replaceEnduringNodes(group.getEnduringNodes()); Message.RENAME_SUCCESS.send(sender, group.getName(), newGroup.getName()); - ExtendedLogEntry.build().actor(sender).acted(group).action("rename " + newGroup.getName()).build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).acted(group) + .action("rename", newGroup.getName()) + .build().submit(plugin, sender); + save(newGroup, sender, plugin); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetDisplayName.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetDisplayName.java index 92f37c730..289b9364c 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetDisplayName.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetDisplayName.java @@ -25,6 +25,7 @@ package me.lucko.luckperms.common.commands.impl.group; +import me.lucko.luckperms.common.actionlog.ExtendedLogEntry; import me.lucko.luckperms.common.commands.ArgumentPermissions; import me.lucko.luckperms.common.commands.CommandException; import me.lucko.luckperms.common.commands.CommandResult; @@ -76,15 +77,25 @@ public class GroupSetDisplayName extends SubCommand { group.removeIf(n -> n.getPermission().startsWith("displayname.")); if (name.equals(group.getName())) { - save(group, sender, plugin); Message.GROUP_SET_DISPLAY_NAME_REMOVED.send(sender, group.getName()); + + ExtendedLogEntry.build().actor(sender).acted(group) + .action("setdisplayname", name) + .build().submit(plugin, sender); + + save(group, sender, plugin); return CommandResult.SUCCESS; } group.setPermission(NodeFactory.newBuilder("displayname." + name).build()); - save(group, sender, plugin); Message.GROUP_SET_DISPLAY_NAME.send(sender, name, group.getName()); + + ExtendedLogEntry.build().actor(sender).acted(group) + .action("setdisplayname", name) + .build().submit(plugin, sender); + + save(group, sender, plugin); return CommandResult.SUCCESS; } } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetWeight.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetWeight.java index 70cc3a6f5..49ef60b7a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetWeight.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/group/GroupSetWeight.java @@ -25,6 +25,7 @@ package me.lucko.luckperms.common.commands.impl.group; +import me.lucko.luckperms.common.actionlog.ExtendedLogEntry; import me.lucko.luckperms.common.commands.ArgumentPermissions; import me.lucko.luckperms.common.commands.CommandException; import me.lucko.luckperms.common.commands.CommandResult; @@ -59,8 +60,13 @@ public class GroupSetWeight extends SubCommand { group.removeIf(n -> n.getPermission().startsWith("weight.")); group.setPermission(NodeFactory.newBuilder("weight." + weight).build()); - save(group, sender, plugin); Message.GROUP_SET_WEIGHT.send(sender, weight, group.getFriendlyName()); + + ExtendedLogEntry.build().actor(sender).acted(group) + .action("setweight", weight) + .build().submit(plugin, sender); + + save(group, sender, plugin); return CommandResult.SUCCESS; } } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/ApplyEditsCommand.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/ApplyEditsCommand.java index 7df1794d8..34896c67a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/ApplyEditsCommand.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/ApplyEditsCommand.java @@ -32,6 +32,7 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import me.lucko.luckperms.api.context.ImmutableContextSet; +import me.lucko.luckperms.common.actionlog.ExtendedLogEntry; import me.lucko.luckperms.common.commands.ArgumentPermissions; import me.lucko.luckperms.common.commands.CommandException; import me.lucko.luckperms.common.commands.CommandResult; @@ -141,6 +142,10 @@ public class ApplyEditsCommand extends SingleCommand { return CommandResult.NO_PERMISSION; } + ExtendedLogEntry.build().actor(sender).acted(holder) + .action("applyedits", part1 + "/" + part2) + .build().submit(plugin, sender); + Set nodes = deserializePermissions(data.getAsJsonArray("nodes")); holder.setEnduringNodes(nodes.stream().map(NodeModel::toNode).collect(Collectors.toSet())); Message.APPLY_EDITS_SUCCESS.send(sender, nodes.size(), holder.getFriendlyName()); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/CreateTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/CreateTrack.java index ae0c7e3c5..fc1370cd4 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/CreateTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/CreateTrack.java @@ -70,7 +70,11 @@ public class CreateTrack extends SingleCommand { } Message.CREATE_SUCCESS.send(sender, trackName); - ExtendedLogEntry.build().actor(sender).actedName(trackName).entryType(LogEntry.Type.TRACK).action("create").build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).actedName(trackName).entryType(LogEntry.Type.TRACK) + .action("create").build() + .submit(plugin, sender); + return CommandResult.SUCCESS; } } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/DeleteTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/DeleteTrack.java index 3211837c4..a7163a305 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/DeleteTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/DeleteTrack.java @@ -72,8 +72,11 @@ public class DeleteTrack extends SingleCommand { } Message.DELETE_SUCCESS.send(sender, trackName); - ExtendedLogEntry.build().actor(sender).actedName(trackName).entryType(LogEntry.Type.TRACK).action("delete").build().submit(plugin, sender); - plugin.getUpdateTaskBuffer().request(); + + ExtendedLogEntry.build().actor(sender).actedName(trackName).entryType(LogEntry.Type.TRACK) + .action("delete") + .build().submit(plugin, sender); + return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackAppend.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackAppend.java index f52e9b32d..2ca1cdc06 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackAppend.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackAppend.java @@ -75,9 +75,11 @@ public class TrackAppend extends SubCommand { if (track.getGroups().size() > 1) { Message.EMPTY.send(sender, Util.listToArrowSep(track.getGroups(), group.getName())); } + ExtendedLogEntry.build().actor(sender).acted(track) - .action("append " + group.getName()) + .action("append", group.getName()) .build().submit(plugin, sender); + save(track, sender, plugin); return CommandResult.SUCCESS; } else { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClear.java index 30d0be958..b228139c5 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClear.java @@ -49,7 +49,11 @@ public class TrackClear extends SubCommand { public CommandResult execute(LuckPermsPlugin plugin, Sender sender, Track track, List args, String label) throws CommandException { track.clearGroups(); Message.TRACK_CLEAR.send(sender, track.getName()); - ExtendedLogEntry.build().actor(sender).acted(track).action("clear").build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).acted(track) + .action("clear") + .build().submit(plugin, sender); + save(track, sender, plugin); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClone.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClone.java index 6257eedb4..495cdb9af 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClone.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackClone.java @@ -66,7 +66,11 @@ public class TrackClone extends SubCommand { newTrack.setGroups(track.getGroups()); Message.CLONE_SUCCESS.send(sender, track.getName(), newTrack.getName()); - ExtendedLogEntry.build().actor(sender).acted(track).action("clone " + newTrack.getName()).build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).acted(track) + .action("clone", newTrack.getName()) + .build().submit(plugin, sender); + save(newTrack, sender, plugin); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackInsert.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackInsert.java index 941714d26..bd2b682a7 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackInsert.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackInsert.java @@ -84,9 +84,11 @@ public class TrackInsert extends SubCommand { if (track.getGroups().size() > 1) { Message.EMPTY.send(sender, Util.listToArrowSep(track.getGroups(), group.getName())); } + ExtendedLogEntry.build().actor(sender).acted(track) - .action("insert " + group.getName() + " " + pos) + .action("insert", group.getName(), pos) .build().submit(plugin, sender); + save(track, sender, plugin); return CommandResult.SUCCESS; } else { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRemove.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRemove.java index c131512d8..24c489e63 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRemove.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRemove.java @@ -63,9 +63,11 @@ public class TrackRemove extends SubCommand { if (track.getGroups().size() > 1) { Message.EMPTY.send(sender, Util.listToArrowSep(track.getGroups())); } + ExtendedLogEntry.build().actor(sender).acted(track) - .action("remove " + groupName) + .action("remove", groupName) .build().submit(plugin, sender); + save(track, sender, plugin); return CommandResult.SUCCESS; } else { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRename.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRename.java index ddfe9ddee..b622656e2 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRename.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/track/TrackRename.java @@ -80,7 +80,11 @@ public class TrackRename extends SubCommand { newTrack.setGroups(track.getGroups()); Message.RENAME_SUCCESS.send(sender, track.getName(), newTrack.getName()); - ExtendedLogEntry.build().actor(sender).acted(track).action("rename " + newTrack.getName()).build().submit(plugin, sender); + + ExtendedLogEntry.build().actor(sender).acted(track) + .action("rename", newTrack.getName()) + .build().submit(plugin, sender); + save(newTrack, sender, plugin); return CommandResult.SUCCESS; } diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserDemote.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserDemote.java index 76117ccfd..fbe27e774 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserDemote.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserDemote.java @@ -134,7 +134,7 @@ public class UserDemote extends SubCommand { Message.USER_DEMOTE_ENDOFTRACK.send(sender, track.getName(), user.getFriendlyName(), old); ExtendedLogEntry.build().actor(sender).acted(user) - .action("demote " + args.stream().collect(Collectors.joining(" "))) + .action("demote", track.getName(), context) .build().submit(plugin, sender); save(user, sender, plugin); @@ -166,7 +166,7 @@ public class UserDemote extends SubCommand { } ExtendedLogEntry.build().actor(sender).acted(user) - .action("demote " + args.stream().collect(Collectors.joining(" "))) + .action("demote", track.getName(), context) .build().submit(plugin, sender); save(user, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserPromote.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserPromote.java index 7b02f4750..b05feaa13 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserPromote.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserPromote.java @@ -119,8 +119,9 @@ public class UserPromote extends SubCommand { user.setPermission(NodeFactory.newBuilder("group." + first).withExtraContext(context).build()); Message.USER_TRACK_ADDED_TO_FIRST.send(sender, user.getFriendlyName(), first, Util.contextSetToString(context)); + ExtendedLogEntry.build().actor(sender).acted(user) - .action("promote " + args.stream().collect(Collectors.joining(" "))) + .action("promote", track.getName(), context) .build().submit(plugin, sender); save(user, sender, plugin); @@ -177,7 +178,7 @@ public class UserPromote extends SubCommand { } ExtendedLogEntry.build().actor(sender).acted(user) - .action("promote " + args.stream().collect(Collectors.joining(" "))) + .action("promote", track.getName(), context) .build().submit(plugin, sender); save(user, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserSwitchPrimaryGroup.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserSwitchPrimaryGroup.java index 8808f05f5..5d7ef235e 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserSwitchPrimaryGroup.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/user/UserSwitchPrimaryGroup.java @@ -79,8 +79,9 @@ public class UserSwitchPrimaryGroup extends SubCommand { user.getPrimaryGroup().setStoredValue(group.getName()); Message.USER_PRIMARYGROUP_SUCCESS.send(sender, user.getFriendlyName(), group.getFriendlyName()); + ExtendedLogEntry.build().actor(sender).acted(user) - .action("setprimarygroup " + group.getName()) + .action("setprimarygroup", group.getName()) .build().submit(plugin, sender); save(user, sender, plugin); diff --git a/common/src/main/java/me/lucko/luckperms/common/storage/dao/sql/SqlDao.java b/common/src/main/java/me/lucko/luckperms/common/storage/dao/sql/SqlDao.java index 9a4ed85eb..86fa4af42 100644 --- a/common/src/main/java/me/lucko/luckperms/common/storage/dao/sql/SqlDao.java +++ b/common/src/main/java/me/lucko/luckperms/common/storage/dao/sql/SqlDao.java @@ -199,6 +199,7 @@ public class SqlDao extends AbstractDao { try (Connection connection = provider.getConnection()) { try (Statement s = connection.createStatement()) { s.execute(prefix.apply("ALTER TABLE {prefix}actions MODIFY COLUMN actor_name VARCHAR(36)")); + s.execute(prefix.apply("ALTER TABLE {prefix}actions MODIFY COLUMN action VARCHAR(300)")); } } diff --git a/common/src/main/resources/schema/h2.sql b/common/src/main/resources/schema/h2.sql index 5f102bb70..424598b57 100644 --- a/common/src/main/resources/schema/h2.sql +++ b/common/src/main/resources/schema/h2.sql @@ -49,7 +49,7 @@ CREATE TABLE `{prefix}actions` ( `type` CHAR(1) NOT NULL, `acted_uuid` VARCHAR(36) NOT NULL, `acted_name` VARCHAR(36) NOT NULL, - `action` VARCHAR(256) NOT NULL, + `action` VARCHAR(300) NOT NULL, PRIMARY KEY (`id`) ); diff --git a/common/src/main/resources/schema/mariadb.sql b/common/src/main/resources/schema/mariadb.sql index 9a75350e0..4e806edf0 100644 --- a/common/src/main/resources/schema/mariadb.sql +++ b/common/src/main/resources/schema/mariadb.sql @@ -49,7 +49,7 @@ CREATE TABLE `{prefix}actions` ( `type` CHAR(1) NOT NULL, `acted_uuid` VARCHAR(36) NOT NULL, `acted_name` VARCHAR(36) NOT NULL, - `action` VARCHAR(256) NOT NULL, + `action` VARCHAR(300) NOT NULL, PRIMARY KEY (`id`) ) DEFAULT CHARSET = utf8; diff --git a/common/src/main/resources/schema/mysql.sql b/common/src/main/resources/schema/mysql.sql index 88ebfffa9..42fe583cb 100644 --- a/common/src/main/resources/schema/mysql.sql +++ b/common/src/main/resources/schema/mysql.sql @@ -49,7 +49,7 @@ CREATE TABLE `{prefix}actions` ( `type` CHAR(1) NOT NULL, `acted_uuid` VARCHAR(36) NOT NULL, `acted_name` VARCHAR(36) NOT NULL, - `action` VARCHAR(256) NOT NULL, + `action` VARCHAR(300) NOT NULL, PRIMARY KEY (`id`) ) DEFAULT CHARSET = utf8; diff --git a/common/src/main/resources/schema/postgresql.sql b/common/src/main/resources/schema/postgresql.sql index 16cedc1ef..b98197162 100644 --- a/common/src/main/resources/schema/postgresql.sql +++ b/common/src/main/resources/schema/postgresql.sql @@ -45,7 +45,7 @@ CREATE TABLE "{prefix}actions" ( "type" CHAR(1) NOT NULL, "acted_uuid" VARCHAR(36) NOT NULL, "acted_name" VARCHAR(36) NOT NULL, - "action" VARCHAR(256) NOT NULL + "action" VARCHAR(300) NOT NULL ); CREATE TABLE "{prefix}tracks" ( diff --git a/common/src/main/resources/schema/sqlite.sql b/common/src/main/resources/schema/sqlite.sql index a13390bd9..c74efa8aa 100644 --- a/common/src/main/resources/schema/sqlite.sql +++ b/common/src/main/resources/schema/sqlite.sql @@ -47,7 +47,7 @@ CREATE TABLE `{prefix}actions` ( `type` CHAR(1) NOT NULL, `acted_uuid` VARCHAR(36) NOT NULL, `acted_name` VARCHAR(36) NOT NULL, - `action` VARCHAR(256) NOT NULL + `action` VARCHAR(300) NOT NULL ); CREATE TABLE `{prefix}tracks` (