diff --git a/api/src/main/java/net/luckperms/api/LuckPerms.java b/api/src/main/java/net/luckperms/api/LuckPerms.java index 7855f4e88..41eae2658 100644 --- a/api/src/main/java/net/luckperms/api/LuckPerms.java +++ b/api/src/main/java/net/luckperms/api/LuckPerms.java @@ -46,7 +46,6 @@ import net.luckperms.api.track.TrackManager; import org.checkerframework.checker.nullness.qual.NonNull; -import java.util.Collection; import java.util.Optional; import java.util.concurrent.CompletableFuture; @@ -207,11 +206,4 @@ public interface LuckPerms { */ void registerMessengerProvider(@NonNull MessengerProvider messengerProvider); - /** - * Gets a {@link Collection} of all known permission strings. - * - * @return a collection of the known permissions - */ - @NonNull Collection getKnownPermissions(); - } diff --git a/api/src/main/java/net/luckperms/api/event/node/NodeMutateEvent.java b/api/src/main/java/net/luckperms/api/event/node/NodeMutateEvent.java index 89930074d..3fe298880 100644 --- a/api/src/main/java/net/luckperms/api/event/node/NodeMutateEvent.java +++ b/api/src/main/java/net/luckperms/api/event/node/NodeMutateEvent.java @@ -27,8 +27,8 @@ package net.luckperms.api.event.node; import net.luckperms.api.event.LuckPermsEvent; import net.luckperms.api.event.Param; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PermissionHolder; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.model.group.Group; import net.luckperms.api.model.user.User; import net.luckperms.api.node.Node; diff --git a/api/src/main/java/net/luckperms/api/model/PermissionHolder.java b/api/src/main/java/net/luckperms/api/model/PermissionHolder.java index 184a1534b..47fea0e7e 100644 --- a/api/src/main/java/net/luckperms/api/model/PermissionHolder.java +++ b/api/src/main/java/net/luckperms/api/model/PermissionHolder.java @@ -26,26 +26,18 @@ package net.luckperms.api.model; import net.luckperms.api.cacheddata.CachedDataManager; -import net.luckperms.api.context.ContextSet; -import net.luckperms.api.context.ImmutableContextSet; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.NodeMap; import net.luckperms.api.model.group.Group; -import net.luckperms.api.model.group.GroupManager; import net.luckperms.api.model.user.User; -import net.luckperms.api.model.user.UserManager; import net.luckperms.api.node.Node; -import net.luckperms.api.node.NodeEqualityPredicate; -import net.luckperms.api.node.Tristate; import net.luckperms.api.query.QueryOptions; import org.checkerframework.checker.nullness.qual.NonNull; import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.Set; import java.util.SortedSet; import java.util.UUID; -import java.util.function.Predicate; /** * Generic superinterface for an object which holds permissions. @@ -156,108 +148,6 @@ public interface PermissionHolder { */ @NonNull NodeMap transientData(); - /** - * Encapsulates a store of data ({@link Node}s) within a {@link PermissionHolder}. - * - *

The effect of any mutate operation will not persist in storage unless changes are - * explicitly saved. If changes are not saved, the effect will only be observed until the next - * time the holders permission data is (re)loaded. Changes to {@link User}s should be saved - * using {@link UserManager#saveUser(User)}, and changes to {@link Group}s should be saved - * using {@link GroupManager#saveGroup(Group)}.

- * - *

Before making changes to a user or group, it may be a good idea to load a fresh copy of - * the backing data from the storage if you haven't done so already, to avoid overwriting changes - * made already. This can be done via {@link UserManager#loadUser(UUID)} or - * {@link GroupManager#loadGroup(String)} respectively.

- */ - interface NodeMap { - - /** - * Gets a map of the {@link Node}s contained within this instance, - * mapped to their defined {@link Node#getContexts() context}. - * - * @return a map of nodes - */ - @NonNull Map> toMap(); - - /** - * Gets a flattened set of {@link Node}s contained within this instance. - * - *

Effectively combines the value collections of the map returned by - * {@link #toMap()}.

- * - * @return a flattened set of the holders own nodes - */ - @NonNull Set toSet(); - - /** - * Gets if this instance contains a given {@link Node}. - * - *

Returns {@link Tristate#UNDEFINED} if the instance does not contain the node, - * and the {@link Node#getValue() assigned value} of the node as a {@link Tristate} - * if it is present.

- * - * @param node the node to check for - * @param equalityPredicate how to determine if a node matches - * @return a Tristate relating to the assigned state of the node - * @throws NullPointerException if the node is null - */ - @NonNull Tristate contains(@NonNull Node node, @NonNull NodeEqualityPredicate equalityPredicate); - - /** - * Adds a node. - * - * @param node the node to be add - * @return the result of the operation - */ - @NonNull DataMutateResult add(@NonNull Node node); - - /** - * Adds a node. - * - * @param node the node to add - * @param temporaryMergeBehaviour the behaviour used to merge temporary permission entries - * @return the result of the operation - */ - @NonNull TemporaryDataMutateResult add(@NonNull Node node, @NonNull TemporaryMergeBehaviour temporaryMergeBehaviour); - - /** - * Removes a node. - * - * @param node the node to remove - * @return the result of the operation - */ - @NonNull DataMutateResult remove(@NonNull Node node); - - /** - * Clears all nodes. - */ - void clear(); - - /** - * Clears any nodes which pass the predicate. - * - * @param test the predicate to test for nodes which should be removed - */ - void clear(@NonNull Predicate test); - - /** - * Clears all nodes in a specific context. - * - * @param contextSet the contexts to filter by - */ - void clear(@NonNull ContextSet contextSet); - - /** - * Clears all nodes in a specific context which pass the predicate. - * - * @param contextSet the contexts to filter by - * @param test the predicate to test for nodes which should be removed - */ - void clear(@NonNull ContextSet contextSet, @NonNull Predicate test); - - } - /** * Gets a flattened/squashed view of the holders permissions. * @@ -272,7 +162,7 @@ public interface PermissionHolder { * * @return a list of the holders own nodes. */ - @NonNull List getNodes(); + @NonNull Collection getNodes(); /** * Gets a sorted set of all held nodes. @@ -301,7 +191,7 @@ public interface PermissionHolder { * @param queryOptions the query options * @return a list of nodes */ - @NonNull List resolveInheritedNodes(@NonNull QueryOptions queryOptions); + @NonNull Collection resolveInheritedNodes(@NonNull QueryOptions queryOptions); /** * Gets a mutable sorted set of the nodes that this object has and inherits, filtered by context diff --git a/api/src/main/java/net/luckperms/api/model/TemporaryDataMutateResult.java b/api/src/main/java/net/luckperms/api/model/TemporaryDataMutateResult.java deleted file mode 100644 index 39eae4b1a..000000000 --- a/api/src/main/java/net/luckperms/api/model/TemporaryDataMutateResult.java +++ /dev/null @@ -1,61 +0,0 @@ -/* - * This file is part of LuckPerms, licensed under the MIT License. - * - * Copyright (c) lucko (Luck) - * Copyright (c) contributors - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package net.luckperms.api.model; - -import net.luckperms.api.node.Node; -import net.luckperms.api.util.Result; - -import org.checkerframework.checker.nullness.qual.NonNull; - -/** - * Extension of {@link DataMutateResult} for temporary set operations. - */ -public interface TemporaryDataMutateResult extends Result { - - /** - * Gets the underlying result. - * - * @return the result - */ - @NonNull DataMutateResult getResult(); - - /** - * Gets the node that resulted from any {@link TemporaryMergeBehaviour} - * processing. - * - *

If no processing took place, the same instance will be returned by - * this method.

- * - * @return the resultant node - */ - @NonNull Node getMergedNode(); - - @Override - default boolean wasSuccessful() { - return getResult().wasSuccessful(); - } - -} diff --git a/api/src/main/java/net/luckperms/api/model/DataMutateResult.java b/api/src/main/java/net/luckperms/api/model/data/DataMutateResult.java similarity index 63% rename from api/src/main/java/net/luckperms/api/model/DataMutateResult.java rename to api/src/main/java/net/luckperms/api/model/data/DataMutateResult.java index cac6ed74f..df03bc6b7 100644 --- a/api/src/main/java/net/luckperms/api/model/DataMutateResult.java +++ b/api/src/main/java/net/luckperms/api/model/data/DataMutateResult.java @@ -1,5 +1,5 @@ /* - * This file is part of LuckPerms, licensed under the MIT License. + * This file is part of luckperms, licensed under the MIT License. * * Copyright (c) lucko (Luck) * Copyright (c) contributors @@ -23,11 +23,15 @@ * SOFTWARE. */ -package net.luckperms.api.model; +package net.luckperms.api.model.data; +import net.luckperms.api.model.PermissionHolder; +import net.luckperms.api.node.Node; import net.luckperms.api.track.Track; import net.luckperms.api.util.Result; +import org.checkerframework.checker.nullness.qual.NonNull; + /** * Represents the result of a data mutation call on a LuckPerms object. * @@ -40,29 +44,54 @@ public enum DataMutateResult implements Result { */ SUCCESS(true), + /** + * Indicates the mutation failed + */ + FAIL(false), + /** * Indicates the mutation failed because the subject of the action already has something */ - ALREADY_HAS(false), + FAIL_ALREADY_HAS(false), /** * Indicates the mutation failed because the subject of the action lacks something */ - LACKS(false), + FAIL_LACKS(false); - /** - * Indicates the mutation failed - */ - FAIL(false); + private final boolean successful; - private final boolean success; - - DataMutateResult(boolean success) { - this.success = success; + DataMutateResult(boolean successful) { + this.successful = successful; } @Override public boolean wasSuccessful() { - return this.success; + return this.successful; + } + + /** + * Extension of {@link DataMutateResult} for temporary set operations. + */ + public interface WithMergedNode { + + /** + * Gets the underlying result. + * + * @return the result + */ + @NonNull DataMutateResult getResult(); + + /** + * Gets the node that resulted from any {@link TemporaryNodeMergeStrategy} + * processing. + * + *

If no processing took place, the same instance will be returned by + * this method.

+ * + * @return the resultant node + */ + @NonNull Node getMergedNode(); + } } diff --git a/api/src/main/java/net/luckperms/api/model/DataType.java b/api/src/main/java/net/luckperms/api/model/data/DataType.java similarity index 93% rename from api/src/main/java/net/luckperms/api/model/DataType.java rename to api/src/main/java/net/luckperms/api/model/data/DataType.java index 363ed1707..ae396fe8b 100644 --- a/api/src/main/java/net/luckperms/api/model/DataType.java +++ b/api/src/main/java/net/luckperms/api/model/data/DataType.java @@ -1,5 +1,5 @@ /* - * This file is part of LuckPerms, licensed under the MIT License. + * This file is part of luckperms, licensed under the MIT License. * * Copyright (c) lucko (Luck) * Copyright (c) contributors @@ -23,7 +23,7 @@ * SOFTWARE. */ -package net.luckperms.api.model; +package net.luckperms.api.model.data; /** * Represents a type of data. diff --git a/api/src/main/java/net/luckperms/api/model/data/NodeMap.java b/api/src/main/java/net/luckperms/api/model/data/NodeMap.java new file mode 100644 index 000000000..e771c5d7b --- /dev/null +++ b/api/src/main/java/net/luckperms/api/model/data/NodeMap.java @@ -0,0 +1,146 @@ +/* + * This file is part of luckperms, licensed under the MIT License. + * + * Copyright (c) lucko (Luck) + * Copyright (c) contributors + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +package net.luckperms.api.model.data; + +import net.luckperms.api.context.ContextSet; +import net.luckperms.api.context.ImmutableContextSet; +import net.luckperms.api.model.PermissionHolder; +import net.luckperms.api.model.group.Group; +import net.luckperms.api.model.group.GroupManager; +import net.luckperms.api.model.user.User; +import net.luckperms.api.model.user.UserManager; +import net.luckperms.api.node.Node; +import net.luckperms.api.node.NodeEqualityPredicate; +import net.luckperms.api.node.Tristate; + +import org.checkerframework.checker.nullness.qual.NonNull; + +import java.util.Collection; +import java.util.Map; +import java.util.UUID; +import java.util.function.Predicate; + +/** + * Encapsulates a store of data ({@link Node}s) within a {@link PermissionHolder}. + * + *

The effect of any mutate operation will not persist in storage unless changes are + * explicitly saved. If changes are not saved, the effect will only be observed until the next + * time the holders permission data is (re)loaded. Changes to {@link User}s should be saved + * using {@link UserManager#saveUser(User)}, and changes to {@link Group}s should be saved + * using {@link GroupManager#saveGroup(Group)}.

+ * + *

Before making changes to a user or group, it may be a good idea to load a fresh copy of + * the backing data from the storage if you haven't done so already, to avoid overwriting changes + * made already. This can be done via {@link UserManager#loadUser(UUID)} or + * {@link GroupManager#loadGroup(String)} respectively.

+ */ +public interface NodeMap { + + /** + * Gets a map of the {@link Node}s contained within this instance, + * mapped to their defined {@link Node#getContexts() context}. + * + * @return a map of nodes + */ + @NonNull Map> toMap(); + + /** + * Gets a flattened view of {@link Node}s contained within this instance. + * + *

Effectively combines the value collections of the map returned by + * {@link #toMap()}.

+ * + * @return a flattened collection of nodes + */ + @NonNull Collection toCollection(); + + /** + * Gets if this instance contains a given {@link Node}. + * + *

Returns {@link Tristate#UNDEFINED} if the instance does not contain the node, + * and the {@link Node#getValue() assigned value} of the node as a {@link Tristate} + * if it is present.

+ * + * @param node the node to check for + * @param equalityPredicate how to determine if a node matches + * @return a Tristate relating to the assigned state of the node + * @throws NullPointerException if the node is null + */ + @NonNull Tristate contains(@NonNull Node node, @NonNull NodeEqualityPredicate equalityPredicate); + + /** + * Adds a node. + * + * @param node the node to be add + * @return the result of the operation + */ + @NonNull DataMutateResult add(@NonNull Node node); + + /** + * Adds a node. + * + * @param node the node to add + * @param temporaryNodeMergeStrategy the strategy used to merge temporary permission entries + * @return the result of the operation + */ + DataMutateResult.@NonNull WithMergedNode add(@NonNull Node node, @NonNull TemporaryNodeMergeStrategy temporaryNodeMergeStrategy); + + /** + * Removes a node. + * + * @param node the node to remove + * @return the result of the operation + */ + @NonNull DataMutateResult remove(@NonNull Node node); + + /** + * Clears all nodes. + */ + void clear(); + + /** + * Clears any nodes which pass the predicate. + * + * @param test the predicate to test for nodes which should be removed + */ + void clear(@NonNull Predicate test); + + /** + * Clears all nodes in a specific context. + * + * @param contextSet the contexts to filter by + */ + void clear(@NonNull ContextSet contextSet); + + /** + * Clears all nodes in a specific context which pass the predicate. + * + * @param contextSet the contexts to filter by + * @param test the predicate to test for nodes which should be removed + */ + void clear(@NonNull ContextSet contextSet, @NonNull Predicate test); + +} diff --git a/api/src/main/java/net/luckperms/api/model/TemporaryMergeBehaviour.java b/api/src/main/java/net/luckperms/api/model/data/TemporaryNodeMergeStrategy.java similarity index 80% rename from api/src/main/java/net/luckperms/api/model/TemporaryMergeBehaviour.java rename to api/src/main/java/net/luckperms/api/model/data/TemporaryNodeMergeStrategy.java index 4bb47be8b..7f71ba257 100644 --- a/api/src/main/java/net/luckperms/api/model/TemporaryMergeBehaviour.java +++ b/api/src/main/java/net/luckperms/api/model/data/TemporaryNodeMergeStrategy.java @@ -1,5 +1,5 @@ /* - * This file is part of LuckPerms, licensed under the MIT License. + * This file is part of luckperms, licensed under the MIT License. * * Copyright (c) lucko (Luck) * Copyright (c) contributors @@ -23,9 +23,8 @@ * SOFTWARE. */ -package net.luckperms.api.model; +package net.luckperms.api.model.data; -import net.luckperms.api.model.PermissionHolder.NodeMap; import net.luckperms.api.node.Node; /** @@ -33,13 +32,13 @@ import net.luckperms.api.node.Node; * that would otherwise conflict with existing entries. * *

The default behaviour of {@link NodeMap#add(Node)} is - * to return a result of {@link DataMutateResult#ALREADY_HAS} when an equivalent - * node is found. This can be replicated using {@link #FAIL_WITH_ALREADY_HAS}.

+ * to return a result of {@link DataMutateResult#FAIL_ALREADY_HAS} when an equivalent + * node is found. This can be replicated using {@link #NONE}.

* - *

However, the {@link NodeMap#add(Node, TemporaryMergeBehaviour)} + *

However, the {@link NodeMap#add(Node, TemporaryNodeMergeStrategy)} * method allows this behaviour to be customized for temporary permissions.

*/ -public enum TemporaryMergeBehaviour { +public enum TemporaryNodeMergeStrategy { /** * Expiry durations will be added to the existing expiry time of a permission. @@ -54,6 +53,6 @@ public enum TemporaryMergeBehaviour { /** * The operation will fail if an existing temporary node is present. */ - FAIL_WITH_ALREADY_HAS + NONE } diff --git a/api/src/main/java/net/luckperms/api/model/user/User.java b/api/src/main/java/net/luckperms/api/model/user/User.java index eee847650..0c3e45e6c 100644 --- a/api/src/main/java/net/luckperms/api/model/user/User.java +++ b/api/src/main/java/net/luckperms/api/model/user/User.java @@ -25,8 +25,8 @@ package net.luckperms.api.model.user; -import net.luckperms.api.model.DataMutateResult; import net.luckperms.api.model.PermissionHolder; +import net.luckperms.api.model.data.DataMutateResult; import org.checkerframework.checker.nullness.qual.NonNull; import org.checkerframework.checker.nullness.qual.Nullable; diff --git a/api/src/main/java/net/luckperms/api/platform/Platform.java b/api/src/main/java/net/luckperms/api/platform/Platform.java index da2c5fb90..271a6e6ca 100644 --- a/api/src/main/java/net/luckperms/api/platform/Platform.java +++ b/api/src/main/java/net/luckperms/api/platform/Platform.java @@ -28,6 +28,7 @@ package net.luckperms.api.platform; import org.checkerframework.checker.nullness.qual.NonNull; import java.time.Instant; +import java.util.Collection; import java.util.Set; import java.util.UUID; @@ -50,6 +51,13 @@ public interface Platform { */ @NonNull Set getUniqueConnections(); + /** + * Gets a {@link Collection} of all known permission strings. + * + * @return a collection of the known permissions + */ + @NonNull Collection getKnownPermissions(); + /** * Gets the time when the plugin first started. * diff --git a/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrder.java b/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrder.java index 4be8f7f90..694511a55 100644 --- a/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrder.java +++ b/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrder.java @@ -25,7 +25,7 @@ package net.luckperms.api.query.dataorder; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.query.QueryOptions; import org.checkerframework.checker.nullness.qual.NonNull; diff --git a/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrderFunction.java b/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrderFunction.java index ee13c2689..3f32b4b72 100644 --- a/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrderFunction.java +++ b/api/src/main/java/net/luckperms/api/query/dataorder/DataQueryOrderFunction.java @@ -25,8 +25,8 @@ package net.luckperms.api.query.dataorder; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PermissionHolder; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.query.OptionKey; import org.checkerframework.checker.nullness.qual.NonNull; diff --git a/api/src/main/java/net/luckperms/api/track/Track.java b/api/src/main/java/net/luckperms/api/track/Track.java index 5a90eba68..503ce8308 100644 --- a/api/src/main/java/net/luckperms/api/track/Track.java +++ b/api/src/main/java/net/luckperms/api/track/Track.java @@ -26,7 +26,7 @@ package net.luckperms.api.track; import net.luckperms.api.context.ContextSet; -import net.luckperms.api.model.DataMutateResult; +import net.luckperms.api.model.data.DataMutateResult; import net.luckperms.api.model.group.Group; import net.luckperms.api.model.user.User; @@ -58,13 +58,6 @@ public interface Track { */ @NonNull List getGroups(); - /** - * Gets the number of groups on this track - * - * @return the number of groups on this track - */ - int getSize(); - /** * Gets the next group on the track, after the one provided * diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/inject/permissible/LPPermissionAttachment.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/inject/permissible/LPPermissionAttachment.java index 67c3682b9..e22812c88 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/inject/permissible/LPPermissionAttachment.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/inject/permissible/LPPermissionAttachment.java @@ -32,7 +32,7 @@ import me.lucko.luckperms.common.config.ConfigKeys; import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.node.factory.NodeBuilders; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.metadata.NodeMetadataKey; 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 58a6b331e..0e8a385ef 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 @@ -55,7 +55,7 @@ import me.lucko.luckperms.common.util.ProgressLogger; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import org.bukkit.configuration.ConfigurationSection; import org.bukkit.configuration.file.YamlConfiguration; 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 d9dcbeab4..63d6af438 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 @@ -48,7 +48,7 @@ import me.lucko.luckperms.common.util.Uuids; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import org.anjocaido.groupmanager.GlobalGroups; diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsBukkit.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsBukkit.java index e001fd89c..8d72585c3 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsBukkit.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsBukkit.java @@ -46,7 +46,7 @@ import me.lucko.luckperms.common.util.ProgressLogger; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import org.bukkit.Bukkit; import org.bukkit.configuration.ConfigurationSection; diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsEx.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsEx.java index df88d820e..b33a7ca3f 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsEx.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationPermissionsEx.java @@ -51,7 +51,7 @@ import me.lucko.luckperms.common.util.ProgressLogger; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import org.bukkit.Bukkit; 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 f8b929576..347e2933b 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 @@ -57,7 +57,7 @@ import me.lucko.luckperms.common.util.ProgressLogger; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeBuilder; import org.bukkit.Bukkit; diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationZPermissions.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationZPermissions.java index 0f1c7baa6..a9c790093 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationZPermissions.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/migration/MigrationZPermissions.java @@ -49,7 +49,7 @@ import me.lucko.luckperms.common.util.ProgressLogger; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import org.bukkit.Bukkit; diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultChat.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultChat.java index fb3b8ec50..a77222efb 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultChat.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultChat.java @@ -42,7 +42,7 @@ import me.lucko.luckperms.common.verbose.event.MetaCheckEvent; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import net.luckperms.api.node.NodeBuilder; import net.luckperms.api.node.NodeType; diff --git a/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultPermission.java b/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultPermission.java index 7d5952a1d..ea8d70c6b 100644 --- a/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultPermission.java +++ b/bukkit/src/main/java/me/lucko/luckperms/bukkit/vault/LuckPermsVaultPermission.java @@ -48,7 +48,7 @@ import me.lucko.luckperms.common.verbose.event.PermissionCheckEvent; import net.luckperms.api.context.ContextSet; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Tristate; import net.luckperms.api.query.Flag; import net.luckperms.api.query.QueryOptions; diff --git a/bungee/src/main/java/me/lucko/luckperms/bungee/migration/MigrationBungeePerms.java b/bungee/src/main/java/me/lucko/luckperms/bungee/migration/MigrationBungeePerms.java index 316d99ef3..0adcf965e 100644 --- a/bungee/src/main/java/me/lucko/luckperms/bungee/migration/MigrationBungeePerms.java +++ b/bungee/src/main/java/me/lucko/luckperms/bungee/migration/MigrationBungeePerms.java @@ -49,7 +49,7 @@ import net.alpenblock.bungeeperms.Server; import net.alpenblock.bungeeperms.World; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import java.util.List; import java.util.Map; diff --git a/common/src/main/java/me/lucko/luckperms/common/api/LuckPermsApiProvider.java b/common/src/main/java/me/lucko/luckperms/common/api/LuckPermsApiProvider.java index 9a359af25..def04a46d 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/LuckPermsApiProvider.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/LuckPermsApiProvider.java @@ -54,7 +54,6 @@ import net.luckperms.api.track.TrackManager; import org.checkerframework.checker.nullness.qual.NonNull; -import java.util.Collection; import java.util.Optional; import java.util.concurrent.CompletableFuture; @@ -147,11 +146,6 @@ public class LuckPermsApiProvider implements LuckPerms { return this.contextManager; } - @Override - public @NonNull Collection getKnownPermissions() { - return this.plugin.getPermissionRegistry().rootAsList(); - } - @Override public @NonNull NodeBuilderRegistry getNodeBuilderRegistry() { return ApiNodeBuilderRegistry.INSTANCE; diff --git a/common/src/main/java/me/lucko/luckperms/common/api/MinimalApiProvider.java b/common/src/main/java/me/lucko/luckperms/common/api/MinimalApiProvider.java index d1e8a9dc0..2ec7c5e40 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/MinimalApiProvider.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/MinimalApiProvider.java @@ -54,7 +54,6 @@ import net.luckperms.api.track.TrackManager; import org.checkerframework.checker.nullness.qual.NonNull; -import java.util.Collection; import java.util.Objects; import java.util.Optional; import java.util.concurrent.CompletableFuture; @@ -99,7 +98,6 @@ public class MinimalApiProvider implements LuckPerms { @Override public @NonNull MetaStackFactory getMetaStackFactory() { throw exception(); } @Override public @NonNull CompletableFuture runUpdateTask() { throw exception(); } @Override public void registerMessengerProvider(@NonNull MessengerProvider messengerProvider) { throw exception(); } - @Override public @NonNull Collection getKnownPermissions() { throw exception(); } private static final class MinimalActionLogger implements ActionLogger { private static final MinimalActionLogger INSTANCE = new MinimalActionLogger(); diff --git a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPermissionHolder.java b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPermissionHolder.java index 11783f205..52999f616 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPermissionHolder.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPermissionHolder.java @@ -30,10 +30,10 @@ import me.lucko.luckperms.common.model.PermissionHolder; import net.luckperms.api.cacheddata.CachedDataManager; import net.luckperms.api.context.ContextSet; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.NodeMap; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeEqualityPredicate; import net.luckperms.api.node.Tristate; @@ -140,7 +140,7 @@ public class ApiPermissionHolder implements net.luckperms.api.model.PermissionHo } @Override - public @NonNull Set toSet() { + public @NonNull Set toCollection() { return ApiPermissionHolder.this.handle.getData(this.dataType).asSet(); } @@ -155,8 +155,8 @@ public class ApiPermissionHolder implements net.luckperms.api.model.PermissionHo } @Override - public @NonNull TemporaryDataMutateResult add(@NonNull Node node, @NonNull TemporaryMergeBehaviour temporaryMergeBehaviour) { - return ApiPermissionHolder.this.handle.setNode(this.dataType, node, temporaryMergeBehaviour); + public DataMutateResult.@NonNull WithMergedNode add(@NonNull Node node, @NonNull TemporaryNodeMergeStrategy temporaryNodeMergeStrategy) { + return ApiPermissionHolder.this.handle.setNode(this.dataType, node, temporaryNodeMergeStrategy); } @Override diff --git a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPlatform.java b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPlatform.java index 9f87a744e..c7053b655 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPlatform.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiPlatform.java @@ -33,6 +33,7 @@ import net.luckperms.api.platform.PluginMetadata; import org.checkerframework.checker.nullness.qual.NonNull; import java.time.Instant; +import java.util.Collection; import java.util.Collections; import java.util.Set; import java.util.UUID; @@ -64,6 +65,11 @@ public class ApiPlatform implements Platform, PluginMetadata { return Collections.unmodifiableSet(this.plugin.getConnectionListener().getUniqueConnections()); } + @Override + public @NonNull Collection getKnownPermissions() { + return this.plugin.getPermissionRegistry().rootAsList(); + } + @Override public @NonNull Instant getStartTime() { return Instant.ofEpochMilli(this.plugin.getBootstrap().getStartupTime()); diff --git a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiTrack.java b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiTrack.java index f995e32eb..1145a5402 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiTrack.java @@ -31,7 +31,7 @@ import me.lucko.luckperms.common.model.Track; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.ContextSet; -import net.luckperms.api.model.DataMutateResult; +import net.luckperms.api.model.data.DataMutateResult; import net.luckperms.api.model.group.Group; import net.luckperms.api.model.user.User; import net.luckperms.api.track.DemotionResult; diff --git a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiUser.java b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiUser.java index 141332fc7..77a0c00ee 100644 --- a/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiUser.java +++ b/common/src/main/java/me/lucko/luckperms/common/api/implementation/ApiUser.java @@ -31,8 +31,8 @@ import me.lucko.luckperms.common.cacheddata.UserCachedDataManager; import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.node.types.Inheritance; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeEqualityPredicate; import org.checkerframework.checker.nullness.qual.NonNull; @@ -77,7 +77,7 @@ public class ApiUser extends ApiPermissionHolder implements net.luckperms.api.mo public @NonNull DataMutateResult setPrimaryGroup(@NonNull String group) { Objects.requireNonNull(group, "group"); if (getPrimaryGroup().equalsIgnoreCase(group)) { - return DataMutateResult.ALREADY_HAS; + return DataMutateResult.FAIL_ALREADY_HAS; } if (!this.handle.hasNode(DataType.NORMAL, Inheritance.builder(group.toLowerCase()).build(), NodeEqualityPredicate.IGNORE_EXPIRY_TIME_AND_VALUE).asBoolean()) { diff --git a/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java b/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java index 6973091aa..2c79a5c55 100644 --- a/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java +++ b/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java @@ -40,7 +40,7 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import java.util.ArrayList; diff --git a/common/src/main/java/me/lucko/luckperms/common/command/utils/ArgumentParser.java b/common/src/main/java/me/lucko/luckperms/common/command/utils/ArgumentParser.java index 21f1714c6..02c96c94d 100644 --- a/common/src/main/java/me/lucko/luckperms/common/command/utils/ArgumentParser.java +++ b/common/src/main/java/me/lucko/luckperms/common/command/utils/ArgumentParser.java @@ -36,7 +36,7 @@ import me.lucko.luckperms.common.util.DateParser; import net.luckperms.api.context.ImmutableContextSet; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import java.util.List; import java.util.Optional; @@ -122,27 +122,28 @@ public class ArgumentParser { return unixTime < (System.currentTimeMillis() / 1000L); } - public static TemporaryMergeBehaviour parseTemporaryModifier(String s) { + public static TemporaryNodeMergeStrategy parseTemporaryModifier(String s) { switch (s.toLowerCase()) { case "accumulate": - return TemporaryMergeBehaviour.ADD_NEW_DURATION_TO_EXISTING; + return TemporaryNodeMergeStrategy.ADD_NEW_DURATION_TO_EXISTING; case "replace": - return TemporaryMergeBehaviour.REPLACE_EXISTING_IF_DURATION_LONGER; + return TemporaryNodeMergeStrategy.REPLACE_EXISTING_IF_DURATION_LONGER; case "deny": - return TemporaryMergeBehaviour.FAIL_WITH_ALREADY_HAS; + case "none": + return TemporaryNodeMergeStrategy.NONE; default: throw new IllegalArgumentException("Unknown value: " + s); } } - public static Optional parseTemporaryModifier(int index, List args) { + public static Optional parseTemporaryModifier(int index, List args) { if (index < 0 || index >= args.size()) { return Optional.empty(); } String s = args.get(index); try { - Optional ret = Optional.of(parseTemporaryModifier(s)); + Optional ret = Optional.of(parseTemporaryModifier(s)); args.remove(index); return ret; } catch (IllegalArgumentException e) { diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddChatMeta.java index aebf101eb..f71bce3ff 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddChatMeta.java @@ -48,8 +48,8 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddTempChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddTempChatMeta.java index 8176cf527..6a6e58fd3 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddTempChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaAddTempChatMeta.java @@ -50,9 +50,9 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.ChatMetaType; import java.util.List; @@ -81,7 +81,7 @@ public class MetaAddTempChatMeta extends SharedSubCommand { int priority = ArgumentParser.parsePriority(0, args); String meta = ArgumentParser.parseString(1, args); long duration = ArgumentParser.parseDuration(2, args); - TemporaryMergeBehaviour modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); + TemporaryNodeMergeStrategy modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); MutableContextSet context = ArgumentParser.parseContext(3, args, plugin); if (ArgumentPermissions.checkContext(plugin, sender, permission, context) || @@ -90,7 +90,7 @@ public class MetaAddTempChatMeta extends SharedSubCommand { return CommandResult.NO_PERMISSION; } - TemporaryDataMutateResult ret = holder.setNode(DataType.NORMAL, this.type.builder(meta, priority).expiry(duration).withContext(context).build(), modifier); + DataMutateResult.WithMergedNode ret = holder.setNode(DataType.NORMAL, this.type.builder(meta, priority).expiry(duration).withContext(context).build(), modifier); if (ret.getResult().wasSuccessful()) { duration = ret.getMergedNode().getExpiry().getEpochSecond(); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaClear.java index f1b68815b..ad69b1d65 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaClear.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveChatMeta.java index 7ff38a1d2..1e2f48b42 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveChatMeta.java @@ -48,8 +48,8 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveTempChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveTempChatMeta.java index c9808aec4..a837aaa94 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveTempChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaRemoveTempChatMeta.java @@ -48,8 +48,8 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSet.java index 66f13fd59..1c9402512 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSet.java @@ -49,7 +49,7 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeEqualityPredicate; import net.luckperms.api.node.NodeType; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetChatMeta.java index 824dbcf3f..35ee172c2 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetChatMeta.java @@ -50,8 +50,8 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import net.luckperms.api.query.QueryOptions; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTemp.java index f56c27d0e..8bd57a0c9 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTemp.java @@ -51,8 +51,8 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeEqualityPredicate; import net.luckperms.api.node.NodeType; @@ -74,7 +74,7 @@ public class MetaSetTemp extends SharedSubCommand { String key = args.get(0); String value = args.get(1); long duration = ArgumentParser.parseDuration(2, args); - TemporaryMergeBehaviour modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); + TemporaryNodeMergeStrategy modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); MutableContextSet context = ArgumentParser.parseContext(3, args, plugin); if (ArgumentPermissions.checkContext(plugin, sender, permission, context) || diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTempChatMeta.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTempChatMeta.java index 613bf5ac4..1b191b22c 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTempChatMeta.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaSetTempChatMeta.java @@ -52,9 +52,9 @@ import me.lucko.luckperms.common.util.TextUtils; import net.kyori.text.TextComponent; import net.kyori.text.event.HoverEvent; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.ChatMetaType; import net.luckperms.api.query.QueryOptions; @@ -85,7 +85,7 @@ public class MetaSetTempChatMeta extends SharedSubCommand { int priority = ArgumentParser.parseIntOrElse(0, args, Integer.MIN_VALUE); String meta; long duration; - TemporaryMergeBehaviour modifier; + TemporaryNodeMergeStrategy modifier; MutableContextSet context; if (priority == Integer.MIN_VALUE) { @@ -130,7 +130,7 @@ public class MetaSetTempChatMeta extends SharedSubCommand { } } - TemporaryDataMutateResult ret = holder.setNode(DataType.NORMAL, this.type.builder(meta, priority).expiry(duration).withContext(context).build(), modifier); + DataMutateResult.WithMergedNode ret = holder.setNode(DataType.NORMAL, this.type.builder(meta, priority).expiry(duration).withContext(context).build(), modifier); if (ret.getResult().wasSuccessful()) { duration = ret.getMergedNode().getExpiry().getEpochSecond(); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnset.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnset.java index fb086da76..8ba196cb3 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnset.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnset.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnsetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnsetTemp.java index d32b396c1..d2526cf37 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnsetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/meta/MetaUnsetTemp.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/other/HolderClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/other/HolderClear.java index f7d369303..193ed5f1a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/other/HolderClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/other/HolderClear.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAdd.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAdd.java index 0137e1fc3..ed8820930 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAdd.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAdd.java @@ -47,8 +47,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAddTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAddTemp.java index 2297dad25..d69d63e8a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAddTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentAddTemp.java @@ -49,10 +49,9 @@ import me.lucko.luckperms.common.util.DurationFormatter; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; -import net.luckperms.api.util.Result; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import java.util.List; @@ -70,7 +69,7 @@ public class ParentAddTemp extends SharedSubCommand { String groupName = ArgumentParser.parseName(0, args); long duration = ArgumentParser.parseDuration(1, args); - TemporaryMergeBehaviour modifier = ArgumentParser.parseTemporaryModifier(2, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); + TemporaryNodeMergeStrategy modifier = ArgumentParser.parseTemporaryModifier(2, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); MutableContextSet context = ArgumentParser.parseContext(2, args, plugin); Group group = StorageAssistant.loadGroup(groupName, sender, plugin, false); @@ -91,9 +90,9 @@ public class ParentAddTemp extends SharedSubCommand { return CommandResult.STATE_ERROR; } - TemporaryDataMutateResult ret = holder.setNode(DataType.NORMAL, Inheritance.builder(group.getName()).expiry(duration).withContext(context).build(), modifier); + DataMutateResult.WithMergedNode ret = holder.setNode(DataType.NORMAL, Inheritance.builder(group.getName()).expiry(duration).withContext(context).build(), modifier); - if (((Result) ret.getResult()).wasSuccessful()) { + if (ret.getResult().wasSuccessful()) { duration = ret.getMergedNode().getExpiry().getEpochSecond(); Message.SET_TEMP_INHERIT_SUCCESS.send(sender, holder.getFormattedDisplayName(), group.getFormattedDisplayName(), DurationFormatter.LONG.formatDateDiff(duration), MessageUtils.contextSetToString(plugin.getLocaleManager(), context)); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClear.java index c5f221541..ff4af2f88 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClear.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClearTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClearTrack.java index a8bbbe78e..b758e99b5 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClearTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentClearTrack.java @@ -49,7 +49,7 @@ import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemove.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemove.java index 64930536f..61ac02251 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemove.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemove.java @@ -50,8 +50,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemoveTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemoveTemp.java index 1f94447ea..9da0fee38 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemoveTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentRemoveTemp.java @@ -46,8 +46,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSet.java index 02443784f..f90821c80 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSet.java @@ -49,7 +49,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSetTrack.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSetTrack.java index 0cc1c90c6..03dd923e0 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSetTrack.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/ParentSetTrack.java @@ -49,7 +49,7 @@ import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/UserSwitchPrimaryGroup.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/UserSwitchPrimaryGroup.java index 5addea578..60014e5f3 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/UserSwitchPrimaryGroup.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/parent/UserSwitchPrimaryGroup.java @@ -47,7 +47,7 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeEqualityPredicate; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionCheck.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionCheck.java index 1f8f3cfd4..42b838a37 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionCheck.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionCheck.java @@ -44,7 +44,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeEqualityPredicate; import net.luckperms.api.node.Tristate; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionClear.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionClear.java index a6e5c0ac6..13e86fd1f 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionClear.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionClear.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSet.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSet.java index 6997eb741..a5b07c659 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSet.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSet.java @@ -46,8 +46,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSetTemp.java index a10a264a2..bbd0f49fc 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionSetTemp.java @@ -48,12 +48,11 @@ import me.lucko.luckperms.common.util.DurationFormatter; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; -import net.luckperms.api.util.Result; import java.util.List; @@ -72,7 +71,7 @@ public class PermissionSetTemp extends SharedSubCommand { String node = ArgumentParser.parseString(0, args); boolean value = ArgumentParser.parseBoolean(1, args); long duration = ArgumentParser.parseDuration(2, args); - TemporaryMergeBehaviour modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); + TemporaryNodeMergeStrategy modifier = ArgumentParser.parseTemporaryModifier(3, args).orElseGet(() -> plugin.getConfiguration().get(ConfigKeys.TEMPORARY_ADD_BEHAVIOUR)); MutableContextSet context = ArgumentParser.parseContext(3, args, plugin); if (ArgumentPermissions.checkContext(plugin, sender, permission, context) || @@ -91,9 +90,9 @@ public class PermissionSetTemp extends SharedSubCommand { } } - TemporaryDataMutateResult result = holder.setNode(DataType.NORMAL, builtNode, modifier); + DataMutateResult.WithMergedNode result = holder.setNode(DataType.NORMAL, builtNode, modifier); - if (((Result) result.getResult()).wasSuccessful()) { + if (result.getResult().wasSuccessful()) { duration = result.getMergedNode().getExpiry().getEpochSecond(); Message.SETPERMISSION_TEMP_SUCCESS.send(sender, node, value, holder.getFormattedDisplayName(), DurationFormatter.LONG.formatDateDiff(duration), MessageUtils.contextSetToString(plugin.getLocaleManager(), context)); diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnset.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnset.java index 4dc30bf3f..efed1cdc6 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnset.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnset.java @@ -46,8 +46,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnsetTemp.java b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnsetTemp.java index e9b29cb1f..ea3acd7ea 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnsetTemp.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/generic/permission/PermissionUnsetTemp.java @@ -46,8 +46,8 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupClone.java b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupClone.java index 8256011f2..958e42a15 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupClone.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupClone.java @@ -41,7 +41,7 @@ import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.event.cause.CreationCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupRename.java b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupRename.java index c1c8379de..6334aa3be 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupRename.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupRename.java @@ -41,7 +41,7 @@ import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.event.cause.CreationCause; import net.luckperms.api.event.cause.DeletionCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetDisplayName.java b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetDisplayName.java index 2cde8f100..4a4160492 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetDisplayName.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetDisplayName.java @@ -46,7 +46,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import net.luckperms.api.node.types.DisplayNameNode; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetWeight.java b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetWeight.java index 460234fb6..2c91ed0a9 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetWeight.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/group/GroupSetWeight.java @@ -42,7 +42,7 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeType; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/log/LogNotify.java b/common/src/main/java/me/lucko/luckperms/common/commands/log/LogNotify.java index f4e2f4836..230ca6c62 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/log/LogNotify.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/log/LogNotify.java @@ -39,7 +39,7 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/migration/MigrationUtils.java b/common/src/main/java/me/lucko/luckperms/common/commands/migration/MigrationUtils.java index 1201d8068..489285632 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/migration/MigrationUtils.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/migration/MigrationUtils.java @@ -29,7 +29,7 @@ import me.lucko.luckperms.common.model.Group; import me.lucko.luckperms.common.node.factory.NodeBuilders; import me.lucko.luckperms.common.node.types.Weight; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.NodeBuilder; import net.luckperms.api.node.NodeType; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/misc/ApplyEditsCommand.java b/common/src/main/java/me/lucko/luckperms/common/commands/misc/ApplyEditsCommand.java index 34c1579d1..adf8512e5 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/misc/ApplyEditsCommand.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/misc/ApplyEditsCommand.java @@ -55,7 +55,7 @@ import me.lucko.luckperms.common.web.WebEditor; import net.luckperms.api.actionlog.Action; import net.luckperms.api.event.cause.CreationCause; import net.luckperms.api.event.cause.DeletionCause; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import java.util.ArrayList; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackAppend.java b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackAppend.java index 6f53b1a16..4e3700388 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackAppend.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackAppend.java @@ -43,7 +43,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataMutateResult; +import net.luckperms.api.model.data.DataMutateResult; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackInsert.java b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackInsert.java index 51f805cdb..1f656f87d 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackInsert.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackInsert.java @@ -43,7 +43,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataMutateResult; +import net.luckperms.api.model.data.DataMutateResult; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackRemove.java b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackRemove.java index 6b9d7066a..258432113 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackRemove.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/track/TrackRemove.java @@ -42,7 +42,7 @@ import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.storage.misc.DataConstraints; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataMutateResult; +import net.luckperms.api.model.data.DataMutateResult; import java.util.List; diff --git a/common/src/main/java/me/lucko/luckperms/common/commands/user/UserClone.java b/common/src/main/java/me/lucko/luckperms/common/commands/user/UserClone.java index e5ad76cac..531614737 100644 --- a/common/src/main/java/me/lucko/luckperms/common/commands/user/UserClone.java +++ b/common/src/main/java/me/lucko/luckperms/common/commands/user/UserClone.java @@ -40,7 +40,7 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import me.lucko.luckperms.common.util.Predicates; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import java.util.List; import java.util.UUID; diff --git a/common/src/main/java/me/lucko/luckperms/common/config/ConfigKeys.java b/common/src/main/java/me/lucko/luckperms/common/config/ConfigKeys.java index e063128c5..2a1ab570a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/config/ConfigKeys.java +++ b/common/src/main/java/me/lucko/luckperms/common/config/ConfigKeys.java @@ -41,7 +41,7 @@ import me.lucko.luckperms.common.util.ImmutableCollectors; import net.luckperms.api.metastacking.DuplicateRemovalFunction; import net.luckperms.api.metastacking.MetaStackDefinition; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.query.Flag; import net.luckperms.api.query.QueryOptions; @@ -131,7 +131,7 @@ public final class ConfigKeys { /** * Controls how temporary add commands should behave */ - public static final ConfigKey TEMPORARY_ADD_BEHAVIOUR = customKey(c -> { + public static final ConfigKey TEMPORARY_ADD_BEHAVIOUR = customKey(c -> { String option = c.getString("temporary-add-behaviour", "deny").toLowerCase(); if (!option.equals("deny") && !option.equals("replace") && !option.equals("accumulate")) { option = "deny"; diff --git a/common/src/main/java/me/lucko/luckperms/common/event/EventFactory.java b/common/src/main/java/me/lucko/luckperms/common/event/EventFactory.java index a51ebb1fa..d6f7e87f5 100644 --- a/common/src/main/java/me/lucko/luckperms/common/event/EventFactory.java +++ b/common/src/main/java/me/lucko/luckperms/common/event/EventFactory.java @@ -84,8 +84,8 @@ import net.luckperms.api.event.user.UserLoadEvent; import net.luckperms.api.event.user.track.UserDemoteEvent; import net.luckperms.api.event.user.track.UserPromoteEvent; import net.luckperms.api.extension.Extension; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PlayerSaveResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import org.checkerframework.checker.nullness.qual.Nullable; 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 ed5adcb23..c08561638 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 @@ -38,10 +38,9 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import net.luckperms.api.context.ContextSet; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; -import net.luckperms.api.model.TemporaryDataMutateResult; -import net.luckperms.api.model.TemporaryMergeBehaviour; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; +import net.luckperms.api.model.data.TemporaryNodeMergeStrategy; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeEqualityPredicate; import net.luckperms.api.node.NodeType; @@ -410,7 +409,7 @@ public abstract class PermissionHolder { public DataMutateResult setNode(DataType dataType, Node node, boolean callEvent) { if (hasNode(dataType, node, NodeEqualityPredicate.IGNORE_EXPIRY_TIME) != Tristate.UNDEFINED) { - return DataMutateResult.ALREADY_HAS; + return DataMutateResult.FAIL_ALREADY_HAS; } NodeMap data = getData(dataType); @@ -428,8 +427,8 @@ public abstract class PermissionHolder { return DataMutateResult.SUCCESS; } - public TemporaryDataMutateResult setNode(DataType dataType, Node node, TemporaryMergeBehaviour mergeBehaviour) { - if (node.hasExpiry() && mergeBehaviour != TemporaryMergeBehaviour.FAIL_WITH_ALREADY_HAS) { + public DataMutateResult.WithMergedNode setNode(DataType dataType, Node node, TemporaryNodeMergeStrategy mergeStrategy) { + if (node.hasExpiry() && mergeStrategy != TemporaryNodeMergeStrategy.NONE) { Node otherMatch = getData(dataType).immutable().values().stream() .filter(NodeEqualityPredicate.IGNORE_EXPIRY_TIME_AND_VALUE.equalTo(node)) .findFirst().orElse(null); @@ -437,7 +436,7 @@ public abstract class PermissionHolder { NodeMap data = getData(dataType); Node newNode = null; - switch (mergeBehaviour) { + switch (mergeStrategy) { case ADD_NEW_DURATION_TO_EXISTING: { // Create a new Node with the same properties, but add the expiry dates together long newExpiry = otherMatch.getExpiry().plus(Duration.between(Instant.now(), node.getExpiry())).getEpochSecond(); @@ -462,18 +461,18 @@ public abstract class PermissionHolder { ImmutableCollection after = data.immutable().values(); this.plugin.getEventFactory().handleNodeAdd(newNode, this, dataType, before, after); - return new TemporaryResult(DataMutateResult.SUCCESS, newNode); + return new MergedNodeResult(DataMutateResult.SUCCESS, newNode); } } } // Fallback to the normal handling. - return new TemporaryResult(setNode(dataType, node, true), node); + return new MergedNodeResult(setNode(dataType, node, true), node); } public DataMutateResult unsetNode(DataType dataType, Node node) { if (hasNode(dataType, node, NodeEqualityPredicate.IGNORE_EXPIRY_TIME_AND_VALUE) == Tristate.UNDEFINED) { - return DataMutateResult.LACKS; + return DataMutateResult.FAIL_LACKS; } ImmutableCollection before = getData(dataType).immutable().values(); @@ -543,11 +542,11 @@ public abstract class PermissionHolder { return OptionalInt.empty(); } - private static final class TemporaryResult implements TemporaryDataMutateResult { + private static final class MergedNodeResult implements DataMutateResult.WithMergedNode { private final DataMutateResult result; private final Node mergedNode; - private TemporaryResult(DataMutateResult result, Node mergedNode) { + private MergedNodeResult(DataMutateResult result, Node mergedNode) { this.result = result; this.mergedNode = mergedNode; } diff --git a/common/src/main/java/me/lucko/luckperms/common/model/Track.java b/common/src/main/java/me/lucko/luckperms/common/model/Track.java index 25b16d367..d54d473ac 100644 --- a/common/src/main/java/me/lucko/luckperms/common/model/Track.java +++ b/common/src/main/java/me/lucko/luckperms/common/model/Track.java @@ -34,8 +34,8 @@ import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import me.lucko.luckperms.common.sender.Sender; import net.luckperms.api.context.ContextSet; -import net.luckperms.api.model.DataMutateResult; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataMutateResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; import net.luckperms.api.track.DemotionResult; @@ -177,7 +177,7 @@ public final class Track { */ public DataMutateResult appendGroup(Group group) { if (containsGroup(group)) { - return DataMutateResult.ALREADY_HAS; + return DataMutateResult.FAIL_ALREADY_HAS; } List before = ImmutableList.copyOf(this.groups); @@ -198,7 +198,7 @@ public final class Track { */ public DataMutateResult insertGroup(Group group, int position) throws IndexOutOfBoundsException { if (containsGroup(group)) { - return DataMutateResult.ALREADY_HAS; + return DataMutateResult.FAIL_ALREADY_HAS; } List before = ImmutableList.copyOf(this.groups); @@ -227,7 +227,7 @@ public final class Track { */ public DataMutateResult removeGroup(String group) { if (!containsGroup(group)) { - return DataMutateResult.LACKS; + return DataMutateResult.FAIL_LACKS; } List before = ImmutableList.copyOf(this.groups); diff --git a/common/src/main/java/me/lucko/luckperms/common/model/manager/user/AbstractUserManager.java b/common/src/main/java/me/lucko/luckperms/common/model/manager/user/AbstractUserManager.java index a824c15b7..1312cd2b3 100644 --- a/common/src/main/java/me/lucko/luckperms/common/model/manager/user/AbstractUserManager.java +++ b/common/src/main/java/me/lucko/luckperms/common/model/manager/user/AbstractUserManager.java @@ -35,7 +35,7 @@ import me.lucko.luckperms.common.model.manager.group.GroupManager; import me.lucko.luckperms.common.node.types.Inheritance; import me.lucko.luckperms.common.plugin.LuckPermsPlugin; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.types.InheritanceNode; diff --git a/common/src/main/java/me/lucko/luckperms/common/plugin/util/AbstractConnectionListener.java b/common/src/main/java/me/lucko/luckperms/common/plugin/util/AbstractConnectionListener.java index 13d311cb4..353328f65 100644 --- a/common/src/main/java/me/lucko/luckperms/common/plugin/util/AbstractConnectionListener.java +++ b/common/src/main/java/me/lucko/luckperms/common/plugin/util/AbstractConnectionListener.java @@ -28,8 +28,8 @@ package me.lucko.luckperms.common.plugin.util; import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.plugin.LuckPermsPlugin; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PlayerSaveResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.platform.Platform; import java.util.Set; diff --git a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/AbstractConfigurateStorage.java b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/AbstractConfigurateStorage.java index f7f1c731e..8194524f7 100644 --- a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/AbstractConfigurateStorage.java +++ b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/file/AbstractConfigurateStorage.java @@ -53,8 +53,8 @@ import me.lucko.luckperms.common.util.MoreFiles; import net.luckperms.api.actionlog.Action; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PlayerSaveResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeBuilder; import net.luckperms.api.node.NodeType; diff --git a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/mongodb/MongoStorage.java b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/mongodb/MongoStorage.java index c0b70120c..f70ad7109 100644 --- a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/mongodb/MongoStorage.java +++ b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/mongodb/MongoStorage.java @@ -59,8 +59,8 @@ import net.luckperms.api.context.Context; import net.luckperms.api.context.ContextSet; import net.luckperms.api.context.DefaultContextKeys; import net.luckperms.api.context.MutableContextSet; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PlayerSaveResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.HeldNode; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeBuilder; diff --git a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/sql/SqlStorage.java b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/sql/SqlStorage.java index a5ef39e86..9f702ada8 100644 --- a/common/src/main/java/me/lucko/luckperms/common/storage/implementation/sql/SqlStorage.java +++ b/common/src/main/java/me/lucko/luckperms/common/storage/implementation/sql/SqlStorage.java @@ -49,8 +49,8 @@ import me.lucko.luckperms.common.storage.misc.PlayerSaveResultImpl; import me.lucko.luckperms.common.util.gson.GsonProvider; import net.luckperms.api.actionlog.Action; -import net.luckperms.api.model.DataType; import net.luckperms.api.model.PlayerSaveResult; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.HeldNode; import net.luckperms.api.node.Node; diff --git a/nukkit/src/main/java/me/lucko/luckperms/nukkit/inject/permissible/LPPermissionAttachment.java b/nukkit/src/main/java/me/lucko/luckperms/nukkit/inject/permissible/LPPermissionAttachment.java index f5cbc900c..396f0aa18 100644 --- a/nukkit/src/main/java/me/lucko/luckperms/nukkit/inject/permissible/LPPermissionAttachment.java +++ b/nukkit/src/main/java/me/lucko/luckperms/nukkit/inject/permissible/LPPermissionAttachment.java @@ -32,7 +32,7 @@ import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.node.factory.NodeBuilders; import me.lucko.luckperms.nukkit.inject.dummy.DummyPlugin; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Node; import net.luckperms.api.node.metadata.NodeMetadataKey; import net.luckperms.api.util.Result; diff --git a/sponge/sponge-service/src/main/java/me/lucko/luckperms/sponge/service/model/LPSubjectData.java b/sponge/sponge-service/src/main/java/me/lucko/luckperms/sponge/service/model/LPSubjectData.java index 63dd4a82f..6eee4b9e1 100644 --- a/sponge/sponge-service/src/main/java/me/lucko/luckperms/sponge/service/model/LPSubjectData.java +++ b/sponge/sponge-service/src/main/java/me/lucko/luckperms/sponge/service/model/LPSubjectData.java @@ -29,7 +29,7 @@ import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableMap; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Tristate; import org.spongepowered.api.service.permission.SubjectData; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/ProxyFactory.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/ProxyFactory.java index 08c0beea6..1c4c6461a 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/ProxyFactory.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/ProxyFactory.java @@ -31,7 +31,7 @@ import me.lucko.luckperms.sponge.service.model.LPSubject; import me.lucko.luckperms.sponge.service.model.LPSubjectCollection; import me.lucko.luckperms.sponge.service.model.LPSubjectData; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import org.spongepowered.api.service.permission.PermissionDescription; import org.spongepowered.api.service.permission.PermissionService; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/CalculatedSubjectData.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/CalculatedSubjectData.java index 3c310b030..01056f0dc 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/CalculatedSubjectData.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/CalculatedSubjectData.java @@ -37,7 +37,7 @@ import me.lucko.luckperms.sponge.service.model.LPSubjectData; import me.lucko.luckperms.sponge.service.model.LPSubjectReference; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Tristate; import net.luckperms.api.query.QueryOptions; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/MonitoredSubjectData.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/MonitoredSubjectData.java index 3878c7e2a..c6175461f 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/MonitoredSubjectData.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/calculated/MonitoredSubjectData.java @@ -30,7 +30,7 @@ import me.lucko.luckperms.sponge.service.model.LPSubject; import me.lucko.luckperms.sponge.service.model.LPSubjectReference; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Tristate; import java.util.concurrent.CompletableFuture; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubject.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubject.java index 66f3e2ae0..5b477a194 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubject.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubject.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.sponge.service.model.LPSubject; import me.lucko.luckperms.sponge.service.model.LPSubjectReference; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.Tristate; import net.luckperms.api.query.QueryOptions; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubjectData.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubjectData.java index 73b7662ef..35a6d3911 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubjectData.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/permissionholder/PermissionHolderSubjectData.java @@ -45,7 +45,7 @@ import me.lucko.luckperms.sponge.service.model.LPSubjectData; import me.lucko.luckperms.sponge.service.model.LPSubjectReference; import net.luckperms.api.context.ImmutableContextSet; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import net.luckperms.api.node.ChatMetaType; import net.luckperms.api.node.Node; import net.luckperms.api.node.NodeType; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubject.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubject.java index a89cc2ad1..485e3c6c0 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubject.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubject.java @@ -35,7 +35,7 @@ import me.lucko.luckperms.sponge.service.model.calculated.CalculatedSubject; import me.lucko.luckperms.sponge.service.model.calculated.CalculatedSubjectData; import me.lucko.luckperms.sponge.service.model.calculated.MonitoredSubjectData; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; import org.spongepowered.api.command.CommandSource; import org.spongepowered.api.service.permission.Subject; diff --git a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubjectData.java b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubjectData.java index 80686f990..39d94eeff 100644 --- a/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubjectData.java +++ b/sponge/src/main/java/me/lucko/luckperms/sponge/service/model/persisted/PersistedSubjectData.java @@ -28,7 +28,7 @@ package me.lucko.luckperms.sponge.service.model.persisted; import me.lucko.luckperms.sponge.service.LuckPermsService; import me.lucko.luckperms.sponge.service.model.calculated.MonitoredSubjectData; -import net.luckperms.api.model.DataType; +import net.luckperms.api.model.data.DataType; /** * Extension of CalculatedSubjectData which persists data when modified