From 2429831153d574da42bd9d290691294d57ec590c Mon Sep 17 00:00:00 2001 From: Luck Date: Wed, 5 Oct 2016 21:40:54 +0100 Subject: [PATCH] API changes for 2.11 --- api/pom.xml | 2 +- .../java/me/lucko/luckperms/api/Contexts.java | 155 ++++++++++++++++++ .../me/lucko/luckperms/api/LocalizedNode.java | 37 ++--- .../lucko/luckperms/api/PermissionHolder.java | 27 +++ bukkit-legacy/pom.xml | 2 +- bukkit-placeholders/pom.xml | 2 +- bukkit/pom.xml | 2 +- .../me/lucko/luckperms/BukkitListener.java | 2 +- .../luckperms/api/vault/VaultChatHook.java | 2 +- .../api/vault/VaultPermissionHook.java | 2 +- .../luckperms/api/vault/cache/VaultUser.java | 2 +- .../me/lucko/luckperms/users/BukkitUser.java | 2 +- bungee/pom.xml | 2 +- .../me/lucko/luckperms/users/BungeeUser.java | 2 +- common/pom.xml | 2 +- .../api/implementation/ApiProvider.java | 2 +- .../internal/PermissionHolderLink.java | 17 +- .../me/lucko/luckperms/commands/Util.java | 2 +- .../group/subcommands/GroupChatMeta.java | 2 +- .../user/subcommands/UserChatMeta.java | 2 +- .../lucko/luckperms/core/InheritanceInfo.java | 1 + .../luckperms/core/PermissionHolder.java | 7 +- .../luckperms/core/PriorityComparator.java | 1 + .../{core => utils}/LocalizedNode.java | 4 +- pom.xml | 4 +- sponge/pom.xml | 2 +- .../api/sponge/LuckPermsSubject.java | 2 +- .../api/sponge/LuckPermsUserSubject.java | 2 +- standalone/pom.xml | 2 +- 29 files changed, 241 insertions(+), 52 deletions(-) create mode 100644 api/src/main/java/me/lucko/luckperms/api/Contexts.java rename common/src/main/java/me/lucko/luckperms/contexts/Contexts.java => api/src/main/java/me/lucko/luckperms/api/LocalizedNode.java (64%) rename common/src/main/java/me/lucko/luckperms/{core => utils}/LocalizedNode.java (98%) diff --git a/api/pom.xml b/api/pom.xml index 303874cf..91d6244d 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/api/src/main/java/me/lucko/luckperms/api/Contexts.java b/api/src/main/java/me/lucko/luckperms/api/Contexts.java new file mode 100644 index 00000000..7c7314ae --- /dev/null +++ b/api/src/main/java/me/lucko/luckperms/api/Contexts.java @@ -0,0 +1,155 @@ +/* + * Copyright (c) 2016 Lucko (Luck) + * + * 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.api; + +import com.google.common.collect.ImmutableMap; + +import java.util.Collections; +import java.util.Map; + +/** + * Represents the context and options for a permission lookup. + * All values are immutable. + * @since 2.11 + */ +public class Contexts { + public static final String SERVER_KEY = "server"; + public static final String WORLD_KEY = "world"; + + /** + * Gets a context that will allow all nodes + * @return a context that will not apply any filters + */ + public static Contexts allowAll() { + return new Contexts(Collections.emptyMap(), true, true, true, true, true); + } + + public static Contexts of(Map context, boolean includeGlobal, boolean includeGlobalWorld, boolean applyGroups, boolean applyGlobalGroups, boolean applyGlobalWorldGroups) { + return new Contexts(context, includeGlobal, includeGlobalWorld, applyGroups, applyGlobalGroups, applyGlobalWorldGroups); + } + + public Contexts(Map context, boolean includeGlobal, boolean includeGlobalWorld, boolean applyGroups, boolean applyGlobalGroups, boolean applyGlobalWorldGroups) { + if (context == null) { + throw new NullPointerException("context"); + } + + this.context = ImmutableMap.copyOf(context); + this.includeGlobal = includeGlobal; + this.includeGlobalWorld = includeGlobalWorld; + this.applyGroups = applyGroups; + this.applyGlobalGroups = applyGlobalGroups; + this.applyGlobalWorldGroups = applyGlobalWorldGroups; + } + + /** + * The contexts that apply for this lookup + * + * The keys for servers and worlds are defined as static values. + */ + private final Map context; + + /** + * If global or non server specific nodes should be applied + */ + private final boolean includeGlobal; + + /** + * If global or non world specific nodes should be applied + */ + private final boolean includeGlobalWorld; + + /** + * If parent groups should be applied + */ + private final boolean applyGroups; + + /** + * If global or non server specific group memberships should be applied + */ + private final boolean applyGlobalGroups; + + /** + * If global or non world specific group memberships should be applied + */ + private final boolean applyGlobalWorldGroups; + + /** + * Gets the contexts that apply for this lookup + * @return an immutable map of context key value pairs + */ + public Map getContext() { + return this.context; + } + + /** + * Gets if global or non server specific nodes should be applied + * @return true if global or non server specific nodes should be applied + */ + public boolean isIncludeGlobal() { + return this.includeGlobal; + } + + /** + * Gets if global or non world specific nodes should be applied + * @return true if global or non world specific nodes should be applied + */ + public boolean isIncludeGlobalWorld() { + return this.includeGlobalWorld; + } + + /** + * Gets if parent groups should be applied + * @return true if parent groups should be applied + */ + public boolean isApplyGroups() { + return this.applyGroups; + } + + /** + * Gets if global or non server specific group memberships should be applied + * @return true if global or non server specific group memberships should be applied + */ + public boolean isApplyGlobalGroups() { + return this.applyGlobalGroups; + } + + /** + * Gets if global or non world specific group memberships should be applied + * @return true if global or non world specific group memberships should be applied + */ + public boolean isApplyGlobalWorldGroups() { + return this.applyGlobalWorldGroups; + } + + public String toString() { + return "Contexts(" + + "context=" + this.getContext() + ", " + + "includeGlobal=" + this.isIncludeGlobal() + ", " + + "includeGlobalWorld=" + this.isIncludeGlobalWorld() + ", " + + "applyGroups=" + this.isApplyGroups() + ", " + + "applyGlobalGroups=" + this.isApplyGlobalGroups() + ", " + + "applyGlobalWorldGroups=" + this.isApplyGlobalWorldGroups() + + ")"; + } + +} diff --git a/common/src/main/java/me/lucko/luckperms/contexts/Contexts.java b/api/src/main/java/me/lucko/luckperms/api/LocalizedNode.java similarity index 64% rename from common/src/main/java/me/lucko/luckperms/contexts/Contexts.java rename to api/src/main/java/me/lucko/luckperms/api/LocalizedNode.java index 828aff78..ac38982b 100644 --- a/common/src/main/java/me/lucko/luckperms/contexts/Contexts.java +++ b/api/src/main/java/me/lucko/luckperms/api/LocalizedNode.java @@ -20,28 +20,25 @@ * SOFTWARE. */ -package me.lucko.luckperms.contexts; +package me.lucko.luckperms.api; -import lombok.AllArgsConstructor; -import lombok.Getter; -import lombok.ToString; +/** + * Represents a Node and where it was inherited from. + * @since 2.11 + */ +public interface LocalizedNode extends Node { -import java.util.Collections; -import java.util.Map; + /** + * Gets the node + * @return the node this instance is representing + */ + Node getNode(); -@Getter -@ToString -@AllArgsConstructor -public class Contexts { - public static Contexts allowAll() { - return new Contexts(Collections.emptyMap(), true, true, true, true, true); - } - - private final Map context; - private final boolean includeGlobal; - private final boolean includeGlobalWorld; - private final boolean applyGroups; - private final boolean applyGlobalGroups; - private final boolean applyGlobalWorldGroups; + /** + * Gets the location where the {@link Node} is inherited from + * @return where the node was inherited from. Will not return null. + * @see PermissionHolder#getObjectName() + */ + String getLocation(); } diff --git a/api/src/main/java/me/lucko/luckperms/api/PermissionHolder.java b/api/src/main/java/me/lucko/luckperms/api/PermissionHolder.java index 92704e2c..5c49e1bc 100644 --- a/api/src/main/java/me/lucko/luckperms/api/PermissionHolder.java +++ b/api/src/main/java/me/lucko/luckperms/api/PermissionHolder.java @@ -68,9 +68,34 @@ public interface PermissionHolder { * Gets an immutable set of the nodes that this object has and inherits * @return an immutable set of permissions * @since 2.6 + * @deprecated in favour of {@link #getAllNodes(Contexts)} */ + @Deprecated Set getAllNodes(); + /** + * Gets a mutable sorted set of the nodes that this object has and inherits, filtered by context + * Unlike {@link #getAllNodesFiltered(Contexts)}, this method will not filter individual nodes. The context is only + * used to determine which groups should apply. + * Nodes are sorted into priority order. + * @param contexts the context for the lookup, + * @return a mutable sorted set of permissions + * @throws NullPointerException if the context is null + * @since 2.11 + */ + SortedSet getAllNodes(Contexts contexts); + + /** + * Gets a mutable set of the nodes that is objects has and inherits, filtered by context. + * Unlike {@link #getAllNodes(Contexts)}, this method WILL filter individual nodes, and only return ones that fully + * meet the context provided. + * @param contexts the context for the lookup + * @return a mutable set of permissions + * @throws NullPointerException if the context is null + * @since 2.11 + */ + Set getAllNodesFiltered(Contexts contexts); + /** * Gets an immutable Map of the objects permission nodes * @return an immutable map of permissions @@ -499,7 +524,9 @@ public interface PermissionHolder { * @param applyGroups if inherited group permissions should be included * @return a map of permissions * @since 2.6 + * @deprecated in favour of {@link #getAllNodesFiltered(Contexts)} */ + @Deprecated Map getPermissions(String server, String world, Map extraContext, boolean includeGlobal, List possibleNodes, boolean applyGroups); /** diff --git a/bukkit-legacy/pom.xml b/bukkit-legacy/pom.xml index 0217476b..c193cf59 100644 --- a/bukkit-legacy/pom.xml +++ b/bukkit-legacy/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/bukkit-placeholders/pom.xml b/bukkit-placeholders/pom.xml index 070e3916..3dddb512 100644 --- a/bukkit-placeholders/pom.xml +++ b/bukkit-placeholders/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/bukkit/pom.xml b/bukkit/pom.xml index afc3bbdc..33619d49 100644 --- a/bukkit/pom.xml +++ b/bukkit/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/bukkit/src/main/java/me/lucko/luckperms/BukkitListener.java b/bukkit/src/main/java/me/lucko/luckperms/BukkitListener.java index 34135ae7..87b63b45 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/BukkitListener.java +++ b/bukkit/src/main/java/me/lucko/luckperms/BukkitListener.java @@ -22,8 +22,8 @@ package me.lucko.luckperms; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.constants.Message; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.inject.Injector; import me.lucko.luckperms.inject.LPPermissible; import me.lucko.luckperms.users.BukkitUser; diff --git a/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultChatHook.java b/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultChatHook.java index f0faf3b0..64cd01ea 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultChatHook.java +++ b/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultChatHook.java @@ -23,10 +23,10 @@ package me.lucko.luckperms.api.vault; import lombok.NonNull; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.vault.cache.ChatCache; import me.lucko.luckperms.api.vault.cache.VaultUser; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.core.PermissionHolder; import me.lucko.luckperms.exceptions.ObjectAlreadyHasException; import me.lucko.luckperms.exceptions.ObjectLacksException; diff --git a/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultPermissionHook.java b/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultPermissionHook.java index f822d7a4..732f6392 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultPermissionHook.java +++ b/bukkit/src/main/java/me/lucko/luckperms/api/vault/VaultPermissionHook.java @@ -26,10 +26,10 @@ import lombok.Getter; import lombok.NonNull; import lombok.Setter; import me.lucko.luckperms.LPBukkitPlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.vault.cache.VaultUser; import me.lucko.luckperms.api.vault.cache.VaultUserManager; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.core.PermissionHolder; import me.lucko.luckperms.exceptions.ObjectAlreadyHasException; import me.lucko.luckperms.exceptions.ObjectLacksException; diff --git a/bukkit/src/main/java/me/lucko/luckperms/api/vault/cache/VaultUser.java b/bukkit/src/main/java/me/lucko/luckperms/api/vault/cache/VaultUser.java index c5531100..5a352403 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/api/vault/cache/VaultUser.java +++ b/bukkit/src/main/java/me/lucko/luckperms/api/vault/cache/VaultUser.java @@ -25,9 +25,9 @@ package me.lucko.luckperms.api.vault.cache; import lombok.Getter; import lombok.RequiredArgsConstructor; import me.lucko.luckperms.LPBukkitPlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.vault.VaultPermissionHook; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.users.User; import java.util.Collections; diff --git a/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java b/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java index 91f9f5e7..a356c737 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java +++ b/bukkit/src/main/java/me/lucko/luckperms/users/BukkitUser.java @@ -25,9 +25,9 @@ package me.lucko.luckperms.users; import lombok.Getter; import lombok.Setter; import me.lucko.luckperms.LPBukkitPlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.event.events.UserPermissionRefreshEvent; import me.lucko.luckperms.api.implementation.internal.UserLink; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.inject.LPPermissible; import org.bukkit.entity.Player; import org.bukkit.permissions.Permissible; diff --git a/bungee/pom.xml b/bungee/pom.xml index 56b12643..6797b960 100644 --- a/bungee/pom.xml +++ b/bungee/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/bungee/src/main/java/me/lucko/luckperms/users/BungeeUser.java b/bungee/src/main/java/me/lucko/luckperms/users/BungeeUser.java index 9bc0d47e..18bb84ea 100644 --- a/bungee/src/main/java/me/lucko/luckperms/users/BungeeUser.java +++ b/bungee/src/main/java/me/lucko/luckperms/users/BungeeUser.java @@ -24,9 +24,9 @@ package me.lucko.luckperms.users; import me.lucko.luckperms.BungeePlayerCache; import me.lucko.luckperms.LPBungeePlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.event.events.UserPermissionRefreshEvent; import me.lucko.luckperms.api.implementation.internal.UserLink; -import me.lucko.luckperms.contexts.Contexts; import net.md_5.bungee.api.connection.ProxiedPlayer; import java.util.Collections; diff --git a/common/pom.xml b/common/pom.xml index e317a3df..5d756c3f 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/common/src/main/java/me/lucko/luckperms/api/implementation/ApiProvider.java b/common/src/main/java/me/lucko/luckperms/api/implementation/ApiProvider.java index a595166e..c1123c51 100644 --- a/common/src/main/java/me/lucko/luckperms/api/implementation/ApiProvider.java +++ b/common/src/main/java/me/lucko/luckperms/api/implementation/ApiProvider.java @@ -70,7 +70,7 @@ public class ApiProvider implements LuckPermsApi { @Override public double getApiVersion() { - return 2.10; + return 2.11; } @Override diff --git a/common/src/main/java/me/lucko/luckperms/api/implementation/internal/PermissionHolderLink.java b/common/src/main/java/me/lucko/luckperms/api/implementation/internal/PermissionHolderLink.java index 44a23f9d..e5bed21d 100644 --- a/common/src/main/java/me/lucko/luckperms/api/implementation/internal/PermissionHolderLink.java +++ b/common/src/main/java/me/lucko/luckperms/api/implementation/internal/PermissionHolderLink.java @@ -24,10 +24,7 @@ package me.lucko.luckperms.api.implementation.internal; import lombok.AllArgsConstructor; import lombok.NonNull; -import me.lucko.luckperms.api.Node; -import me.lucko.luckperms.api.PermissionHolder; -import me.lucko.luckperms.api.Tristate; -import me.lucko.luckperms.contexts.Contexts; +import me.lucko.luckperms.api.*; import me.lucko.luckperms.exceptions.ObjectAlreadyHasException; import me.lucko.luckperms.exceptions.ObjectLacksException; @@ -53,7 +50,7 @@ public class PermissionHolderLink implements PermissionHolder { @Override public SortedSet getPermissions() { - return Collections.unmodifiableSortedSet(master.getPermissions(false)); + return master.getPermissions(false); } @Override @@ -71,6 +68,16 @@ public class PermissionHolderLink implements PermissionHolder { return Collections.unmodifiableSet(master.getAllNodes(Collections.emptyList(), Contexts.allowAll())); } + @Override + public SortedSet getAllNodes(@NonNull Contexts contexts) { + return master.getAllNodes(Collections.emptyList(), contexts); + } + + @Override + public Set getAllNodesFiltered(@NonNull Contexts contexts) { + return master.getAllNodesFiltered(contexts); + } + @Override public Map getNodes() { return exportToLegacy(master.getNodes()); diff --git a/common/src/main/java/me/lucko/luckperms/commands/Util.java b/common/src/main/java/me/lucko/luckperms/commands/Util.java index 7fbee63b..e37be198 100644 --- a/common/src/main/java/me/lucko/luckperms/commands/Util.java +++ b/common/src/main/java/me/lucko/luckperms/commands/Util.java @@ -23,11 +23,11 @@ package me.lucko.luckperms.commands; import lombok.experimental.UtilityClass; +import me.lucko.luckperms.api.LocalizedNode; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.Tristate; import me.lucko.luckperms.constants.Message; import me.lucko.luckperms.constants.Patterns; -import me.lucko.luckperms.core.LocalizedNode; import me.lucko.luckperms.utils.DateUtil; import java.util.*; diff --git a/common/src/main/java/me/lucko/luckperms/commands/group/subcommands/GroupChatMeta.java b/common/src/main/java/me/lucko/luckperms/commands/group/subcommands/GroupChatMeta.java index 7bc585a0..3cb59d0c 100644 --- a/common/src/main/java/me/lucko/luckperms/commands/group/subcommands/GroupChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/commands/group/subcommands/GroupChatMeta.java @@ -23,11 +23,11 @@ package me.lucko.luckperms.commands.group.subcommands; import me.lucko.luckperms.LuckPermsPlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.commands.*; import me.lucko.luckperms.constants.Message; import me.lucko.luckperms.constants.Permission; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.groups.Group; import java.util.*; diff --git a/common/src/main/java/me/lucko/luckperms/commands/user/subcommands/UserChatMeta.java b/common/src/main/java/me/lucko/luckperms/commands/user/subcommands/UserChatMeta.java index 9405f800..d47a70d0 100644 --- a/common/src/main/java/me/lucko/luckperms/commands/user/subcommands/UserChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/commands/user/subcommands/UserChatMeta.java @@ -23,11 +23,11 @@ package me.lucko.luckperms.commands.user.subcommands; import me.lucko.luckperms.LuckPermsPlugin; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.commands.*; import me.lucko.luckperms.constants.Message; import me.lucko.luckperms.constants.Permission; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.users.User; import java.util.AbstractMap.SimpleEntry; diff --git a/common/src/main/java/me/lucko/luckperms/core/InheritanceInfo.java b/common/src/main/java/me/lucko/luckperms/core/InheritanceInfo.java index 47188e1b..5e6c7cef 100644 --- a/common/src/main/java/me/lucko/luckperms/core/InheritanceInfo.java +++ b/common/src/main/java/me/lucko/luckperms/core/InheritanceInfo.java @@ -23,6 +23,7 @@ package me.lucko.luckperms.core; import lombok.*; +import me.lucko.luckperms.api.LocalizedNode; import me.lucko.luckperms.api.Tristate; import java.util.Optional; diff --git a/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java b/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java index 914b2972..5deb43a6 100644 --- a/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java +++ b/common/src/main/java/me/lucko/luckperms/core/PermissionHolder.java @@ -29,6 +29,8 @@ import lombok.AccessLevel; import lombok.Getter; import lombok.RequiredArgsConstructor; import me.lucko.luckperms.LuckPermsPlugin; +import me.lucko.luckperms.api.Contexts; +import me.lucko.luckperms.api.LocalizedNode; import me.lucko.luckperms.api.Node; import me.lucko.luckperms.api.Tristate; import me.lucko.luckperms.api.event.events.GroupRemoveEvent; @@ -36,7 +38,6 @@ import me.lucko.luckperms.api.event.events.PermissionNodeExpireEvent; import me.lucko.luckperms.api.event.events.PermissionNodeSetEvent; import me.lucko.luckperms.api.event.events.PermissionNodeUnsetEvent; import me.lucko.luckperms.api.implementation.internal.PermissionHolderLink; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.exceptions.ObjectAlreadyHasException; import me.lucko.luckperms.exceptions.ObjectLacksException; import me.lucko.luckperms.groups.Group; @@ -177,11 +178,11 @@ public abstract class PermissionHolder { TreeSet combined = new TreeSet<>(PriorityComparator.reverse()); getNodes().stream() - .map(n -> LocalizedNode.of(n, getObjectName())) + .map(n -> me.lucko.luckperms.utils.LocalizedNode.of(n, getObjectName())) .forEach(combined::add); getTransientNodes().stream() - .map(n -> LocalizedNode.of(n, getObjectName())) + .map(n -> me.lucko.luckperms.utils.LocalizedNode.of(n, getObjectName())) .forEach(combined::add); TreeSet permissions = new TreeSet<>(PriorityComparator.reverse()); diff --git a/common/src/main/java/me/lucko/luckperms/core/PriorityComparator.java b/common/src/main/java/me/lucko/luckperms/core/PriorityComparator.java index cc3800bb..90784266 100644 --- a/common/src/main/java/me/lucko/luckperms/core/PriorityComparator.java +++ b/common/src/main/java/me/lucko/luckperms/core/PriorityComparator.java @@ -24,6 +24,7 @@ package me.lucko.luckperms.core; import lombok.AccessLevel; import lombok.NoArgsConstructor; +import me.lucko.luckperms.api.LocalizedNode; import me.lucko.luckperms.api.Node; import java.text.Collator; diff --git a/common/src/main/java/me/lucko/luckperms/core/LocalizedNode.java b/common/src/main/java/me/lucko/luckperms/utils/LocalizedNode.java similarity index 98% rename from common/src/main/java/me/lucko/luckperms/core/LocalizedNode.java rename to common/src/main/java/me/lucko/luckperms/utils/LocalizedNode.java index c52b40d3..69f61d64 100644 --- a/common/src/main/java/me/lucko/luckperms/core/LocalizedNode.java +++ b/common/src/main/java/me/lucko/luckperms/utils/LocalizedNode.java @@ -20,7 +20,7 @@ * SOFTWARE. */ -package me.lucko.luckperms.core; +package me.lucko.luckperms.utils; import lombok.*; import me.lucko.luckperms.api.Node; @@ -37,7 +37,7 @@ import java.util.Optional; @Getter @ToString @AllArgsConstructor(access = AccessLevel.PRIVATE) -public class LocalizedNode implements me.lucko.luckperms.api.Node { +public class LocalizedNode implements me.lucko.luckperms.api.LocalizedNode { public static LocalizedNode of(@NonNull me.lucko.luckperms.api.Node node, @NonNull String location) { return new LocalizedNode(node, location); } diff --git a/pom.xml b/pom.xml index 4e9839d8..ba2a30a8 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ me.lucko.luckperms luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT common api @@ -39,7 +39,7 @@ UTF-8 - 2.10 + 2.11 diff --git a/sponge/pom.xml b/sponge/pom.xml index 28983167..93f53843 100644 --- a/sponge/pom.xml +++ b/sponge/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0 diff --git a/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsSubject.java b/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsSubject.java index 45983935..aa4b0deb 100644 --- a/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsSubject.java +++ b/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsSubject.java @@ -26,8 +26,8 @@ import com.google.common.collect.ImmutableList; import lombok.EqualsAndHashCode; import lombok.Getter; import lombok.NonNull; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.Node; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.core.PermissionHolder; import me.lucko.luckperms.groups.Group; import me.lucko.luckperms.users.User; diff --git a/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsUserSubject.java b/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsUserSubject.java index dd0bc371..9d45b563 100644 --- a/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsUserSubject.java +++ b/sponge/src/main/java/me/lucko/luckperms/api/sponge/LuckPermsUserSubject.java @@ -24,9 +24,9 @@ package me.lucko.luckperms.api.sponge; import lombok.Getter; import lombok.NonNull; +import me.lucko.luckperms.api.Contexts; import me.lucko.luckperms.api.event.events.UserPermissionRefreshEvent; import me.lucko.luckperms.api.implementation.internal.UserLink; -import me.lucko.luckperms.contexts.Contexts; import me.lucko.luckperms.users.User; import org.spongepowered.api.Sponge; import org.spongepowered.api.command.CommandSource; diff --git a/standalone/pom.xml b/standalone/pom.xml index 08c31412..1e1e6138 100644 --- a/standalone/pom.xml +++ b/standalone/pom.xml @@ -5,7 +5,7 @@ luckperms me.lucko.luckperms - 2.10-SNAPSHOT + 2.11-SNAPSHOT 4.0.0