From 230d9725e828ab9e35fbb17e8368e7f5baddc15c Mon Sep 17 00:00:00 2001 From: Luck Date: Sun, 29 Oct 2017 20:37:29 +0000 Subject: [PATCH] cleanup & fix build --- .../bukkit/migration/MigrationBPermissions.java | 2 +- .../bukkit/migration/MigrationGroupManager.java | 2 +- .../bukkit/migration/MigrationPowerfulPerms.java | 2 +- .../lucko/luckperms/bukkit/model/LPPermissible.java | 2 +- .../common/calculators/PermissionCalculator.java | 8 ++------ .../common/commands/impl/misc/TreeCommand.java | 12 ++---------- .../common/commands/impl/misc/VerboseCommand.java | 6 +----- .../common/managers/GenericUserManager.java | 11 ++++++----- .../luckperms/common/model/PermissionHolder.java | 12 ++++++------ .../java/me/lucko/luckperms/common/model/User.java | 1 - .../common/storage/dao/file/ConfigurateDao.java | 2 +- .../luckperms/common/storage/dao/sql/SqlDao.java | 2 +- .../luckperms/sponge/managers/SpongeUserManager.java | 11 ++++++----- .../sponge/migration/MigrationPermissionsEx.java | 2 +- 14 files changed, 30 insertions(+), 45 deletions(-) diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationBPermissions.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationBPermissions.java index 3fcbd1d25..1cc0de46f 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationBPermissions.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationBPermissions.java @@ -174,7 +174,7 @@ public class MigrationBPermissions extends SubCommand { } // Make a LuckPerms user for the one being migrated. - plugin.getStorage().loadUser(uuid, "null").join(); + plugin.getStorage().loadUser(uuid, null).join(); User lpUser = plugin.getUserManager().getIfLoaded(uuid); migrateHolder(world, user, lpUser); diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationGroupManager.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationGroupManager.java index 3b60fcb19..548beb9e4 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationGroupManager.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationGroupManager.java @@ -262,7 +262,7 @@ public class MigrationGroupManager extends SubCommand { log.log("Starting user migration."); AtomicInteger userCount = new AtomicInteger(0); for (Map.Entry> e : users.entrySet()) { - plugin.getStorage().loadUser(e.getKey(), "null").join(); + plugin.getStorage().loadUser(e.getKey(), null).join(); me.lucko.luckperms.common.model.User user = plugin.getUserManager().getIfLoaded(e.getKey()); for (Node node : e.getValue()) { diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPowerfulPerms.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPowerfulPerms.java index c837f8bcc..6691cbff5 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPowerfulPerms.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPowerfulPerms.java @@ -231,7 +231,7 @@ public class MigrationPowerfulPerms extends SubCommand { for (UUID uuid : uuids) { // Create a LuckPerms user for the UUID - plugin.getStorage().loadUser(uuid, "null").join(); + plugin.getStorage().loadUser(uuid, null).join(); User user = plugin.getUserManager().getIfLoaded(uuid); List permissions = joinFuture(pm.getPlayerOwnPermissions(uuid)); diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/model/LPPermissible.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/model/LPPermissible.java index 112c6bd81..0f9d21c67 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/model/LPPermissible.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/model/LPPermissible.java @@ -151,7 +151,7 @@ public class LPPermissible extends PermissibleBase { * * @return the calculated contexts for the player. */ - public Contexts calculateContexts() { + private Contexts calculateContexts() { return plugin.getContextManager().getApplicableContexts(player); } diff --git a/common/src/main/java/me/lucko/luckperms/common/calculators/PermissionCalculator.java b/common/src/main/java/me/lucko/luckperms/common/calculators/PermissionCalculator.java index 639b68663..ebeede406 100644 --- a/common/src/main/java/me/lucko/luckperms/common/calculators/PermissionCalculator.java +++ b/common/src/main/java/me/lucko/luckperms/common/calculators/PermissionCalculator.java @@ -59,7 +59,7 @@ public class PermissionCalculator implements CacheLoader { // convert the permission to lowercase, as all values in the backing map are also lowercase. // this allows fast case insensitive lookups - permission = permission.toLowerCase(); + permission = permission.toLowerCase().intern(); // get the result Tristate result = lookupCache.get(permission); @@ -72,11 +72,7 @@ public class PermissionCalculator implements CacheLoader { } @Override - public Tristate load(String s) { - return lookupPermissionValue(s); - } - - private Tristate lookupPermissionValue(String permission) { + public Tristate load(String permission) { // offer the permission to the permission vault // we only need to do this once per permission, so it doesn't matter diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/TreeCommand.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/TreeCommand.java index dd27cbf03..d5fa07600 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/TreeCommand.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/TreeCommand.java @@ -95,16 +95,12 @@ public class TreeCommand extends SingleCommand { } Message.TREE_UPLOAD_START.send(sender); - String url = view.uploadPasteData(plugin.getVersion(), user.getFriendlyName(), permissionData); - if (url == null) { - url = "null"; - } Message.TREE_URL.send(sender); Component message = TextComponent.builder(url).color(TextColor.AQUA) - .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, String.valueOf(url))) .hoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, TextComponent.of("Click to open the tree view.").color(TextColor.GRAY))) .build(); @@ -120,16 +116,12 @@ public class TreeCommand extends SingleCommand { } Message.TREE_UPLOAD_START.send(sender); - String url = view.uploadPasteData(plugin.getVersion()); - if (url == null) { - url = "null"; - } Message.TREE_URL.send(sender); Component message = TextComponent.builder(url).color(TextColor.AQUA) - .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, String.valueOf(url))) .hoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, TextComponent.of("Click to open the tree view.").color(TextColor.GRAY))) .build(); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/VerboseCommand.java b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/VerboseCommand.java index bf0c9844f..75cfc24d1 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/VerboseCommand.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/impl/misc/VerboseCommand.java @@ -109,16 +109,12 @@ public class VerboseCommand extends SingleCommand { Message.VERBOSE_OFF.send(sender); } else { Message.VERBOSE_UPLOAD_START.send(sender); - String url = listener.uploadPasteData(!noTraces, attachRaw); - if (url == null) { - url = "null"; - } Message.VERBOSE_RESULTS_URL.send(sender); Component message = TextComponent.builder(url).color(TextColor.AQUA) - .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, url)) + .clickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, String.valueOf(url))) .hoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, TextComponent.of("Click to open the results page.").color(TextColor.GRAY))) .build(); diff --git a/common/src/main/java/me/lucko/luckperms/common/managers/GenericUserManager.java b/common/src/main/java/me/lucko/luckperms/common/managers/GenericUserManager.java index e44c998fe..22105b5ff 100644 --- a/common/src/main/java/me/lucko/luckperms/common/managers/GenericUserManager.java +++ b/common/src/main/java/me/lucko/luckperms/common/managers/GenericUserManager.java @@ -112,11 +112,12 @@ public class GenericUserManager extends AbstractManager im @Override public CompletableFuture updateAllUsers() { - return CompletableFuture.supplyAsync(plugin::getOnlinePlayers, plugin.getScheduler().sync()) - .thenAcceptAsync(players -> players.forEach(uuid -> { - UUID internal = plugin.getUuidCache().getUUID(uuid); - plugin.getStorage().loadUser(internal, "null").join(); - }), plugin.getScheduler().async()); + return CompletableFuture.runAsync( + () -> plugin.getOnlinePlayers() + .map(u -> plugin.getUuidCache().getUUID(u)) + .forEach(u -> plugin.getStorage().loadUser(u, null).join()), + plugin.getScheduler().async() + ); } public static boolean giveDefaultIfNeeded(User user, boolean save, LuckPermsPlugin plugin) { diff --git a/common/src/main/java/me/lucko/luckperms/common/model/PermissionHolder.java b/common/src/main/java/me/lucko/luckperms/common/model/PermissionHolder.java index 64c86a78d..b617d3e02 100644 --- a/common/src/main/java/me/lucko/luckperms/common/model/PermissionHolder.java +++ b/common/src/main/java/me/lucko/luckperms/common/model/PermissionHolder.java @@ -733,13 +733,13 @@ public abstract class PermissionHolder { Map perms = new HashMap<>(); boolean applyShorthand = plugin.getConfiguration().get(ConfigKeys.APPLYING_SHORTHAND); for (Node node : entries) { - String perm = lowerCase ? node.getPermission().toLowerCase() : node.getPermission(); + String perm = lowerCase ? node.getPermission().toLowerCase().intern() : node.getPermission(); - if (perms.putIfAbsent(perm, node.getValuePrimitive()) == null) { - if (applyShorthand) { - List sh = node.resolveShorthand(); - if (!sh.isEmpty()) { - sh.stream().map(s -> lowerCase ? s.toLowerCase() : s).forEach(s -> perms.putIfAbsent(s, node.getValuePrimitive())); + if (perms.putIfAbsent(perm, node.getValuePrimitive()) == null && applyShorthand) { + List shorthand = node.resolveShorthand(); + if (!shorthand.isEmpty()) { + for (String s : shorthand) { + perms.putIfAbsent((lowerCase ? s.toLowerCase() : s).intern(), node.getValuePrimitive()); } } } diff --git a/common/src/main/java/me/lucko/luckperms/common/model/User.java b/common/src/main/java/me/lucko/luckperms/common/model/User.java index 43faef683..93af7f0b1 100644 --- a/common/src/main/java/me/lucko/luckperms/common/model/User.java +++ b/common/src/main/java/me/lucko/luckperms/common/model/User.java @@ -186,7 +186,6 @@ public class User extends PermissionHolder implements Identifiable { 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 7865ecbaf..2ebf83d6d 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 @@ -225,7 +225,7 @@ public class SqlDao extends AbstractDao { ps.setString(2, entry.getActor().toString()); ps.setString(3, entry.getActorName()); ps.setString(4, Character.toString(entry.getEntryType().getCode())); - ps.setString(5, entry.getActed() == null ? "null" : entry.getActed().toString()); + ps.setString(5, String.valueOf(entry.getActed())); ps.setString(6, entry.getActedName()); ps.setString(7, entry.getAction()); ps.execute(); diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/managers/SpongeUserManager.java b/sponge/src/main/java/me/lucko/luckperms/sponge/managers/SpongeUserManager.java index 24e1877ab..d143387da 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/managers/SpongeUserManager.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/managers/SpongeUserManager.java @@ -197,11 +197,12 @@ public class SpongeUserManager implements UserManager, LPSubjectCollection { @Override public CompletableFuture updateAllUsers() { - return CompletableFuture.supplyAsync(plugin::getOnlinePlayers, plugin.getScheduler().sync()) - .thenAcceptAsync(players -> players.forEach(uuid -> { - UUID internal = plugin.getUuidCache().getUUID(uuid); - plugin.getStorage().loadUser(internal, "null").join(); - }), plugin.getScheduler().async()); + return CompletableFuture.runAsync( + () -> plugin.getOnlinePlayers() + .map(u -> plugin.getUuidCache().getUUID(u)) + .forEach(u -> plugin.getStorage().loadUser(u, null).join()), + plugin.getScheduler().async() + ); } /* ------------------------------------------ diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/migration/MigrationPermissionsEx.java b/sponge/src/main/java/me/lucko/luckperms/sponge/migration/MigrationPermissionsEx.java index 51307b057..2dd57e561 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/migration/MigrationPermissionsEx.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/migration/MigrationPermissionsEx.java @@ -181,7 +181,7 @@ public class MigrationPermissionsEx extends SubCommand { } // Make a LuckPerms user for the one being migrated - plugin.getStorage().loadUser(uuid, "null").join(); + plugin.getStorage().loadUser(uuid, null).join(); User user = plugin.getUserManager().getIfLoaded(uuid); if (user.getEnduringNodes().size() <= 1) { user.clearNodes(false);