From e8f4855eec07f0d2525c9a72fd37b036ae2cf274 Mon Sep 17 00:00:00 2001 From: ActualPlayer Date: Tue, 13 Aug 2019 23:35:35 +0200 Subject: [PATCH] fixed luckperms loading3 --- .../java/com/actualplayer/rememberme/RememberMe.java | 6 ++++-- .../rememberme/handlers/LuckPermsHandler.java | 11 ++++++----- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/actualplayer/rememberme/RememberMe.java b/src/main/java/com/actualplayer/rememberme/RememberMe.java index 729c289..a82a72c 100644 --- a/src/main/java/com/actualplayer/rememberme/RememberMe.java +++ b/src/main/java/com/actualplayer/rememberme/RememberMe.java @@ -63,9 +63,11 @@ public class RememberMe { if (!loginEvent.getPlayer().hasPermission("rememberme.notransfer")) { handler.getLastServerName(loginEvent.getPlayer().getUniqueId()).thenAcceptAsync(lastServerName -> { if (lastServerName != null) { - getServer().getServer(lastServerName).ifPresent(lastServer -> loginEvent.getPlayer().createConnectionRequest(lastServer).connectWithIndication()); + getServer().getServer(lastServerName).ifPresent(lastServer -> { + loginEvent.getPlayer().createConnectionRequest(lastServer).connectWithIndication(); + }); } - }); + }).join(); } } diff --git a/src/main/java/com/actualplayer/rememberme/handlers/LuckPermsHandler.java b/src/main/java/com/actualplayer/rememberme/handlers/LuckPermsHandler.java index 574ed75..6f0b22a 100644 --- a/src/main/java/com/actualplayer/rememberme/handlers/LuckPermsHandler.java +++ b/src/main/java/com/actualplayer/rememberme/handlers/LuckPermsHandler.java @@ -6,6 +6,8 @@ import me.lucko.luckperms.api.LuckPermsApi; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.User; import me.lucko.luckperms.api.caching.MetaData; +import me.lucko.luckperms.api.context.ContextManager; +import me.lucko.luckperms.api.context.ImmutableContextSet; import me.lucko.luckperms.api.manager.UserManager; import java.util.Optional; @@ -26,12 +28,11 @@ public class LuckPermsHandler implements IRememberMeHandler { CompletableFuture userFuture = userManager.loadUser(uuid); return userFuture.thenApply(user -> { if (user != null) { - Optional contextsOpt = api.getContextManager().lookupApplicableContexts(user); + ContextManager cm = api.getContextManager(); + Contexts contexts = cm.lookupApplicableContexts(user).orElse(cm.getStaticContexts()); - if (contextsOpt.isPresent()) { - MetaData metaData = user.getCachedData().getMetaData(contextsOpt.get()); - return metaData.getMeta().getOrDefault("last-server", null); - } + MetaData metaData = user.getCachedData().getMetaData(contexts); + return metaData.getMeta().getOrDefault("last-server", null); } return null;