Interface IPermissionHandler
- All Known Implementing Classes:
DefaultPermissionHandler
public interface IPermissionHandler
This is the Heart of the PermissionAPI, it manages
PermissionNodes
as well as it handles all permission queries.
Note: You do not need to implement a PermissionHandler to query for permissions.
-
Method Summary
Modifier and TypeMethodDescriptionReturns an identifier for the PermissionHandler.<T> TgetOfflinePermission(UUID player, PermissionNode<T> node, PermissionDynamicContext<?>... context) <T> TgetPermission(ServerPlayer player, PermissionNode<T> node, PermissionDynamicContext<?>... context) Set<PermissionNode<?>> Returns an unmodifiable view of the collection of registered permission nodes.
-
Method Details
-
getIdentifier
ResourceLocation getIdentifier()Returns an identifier for the PermissionHandler.- Returns:
- an identifier for the PermissionHandler
-
getRegisteredNodes
Set<PermissionNode<?>> getRegisteredNodes()Returns an unmodifiable view of the collection of registered permission nodes.- Returns:
- an unmodifiable view of the collection of registered permission nodes
-
getPermission
<T> T getPermission(ServerPlayer player, PermissionNode<T> node, PermissionDynamicContext<?>... context) Mods must usePermissionAPI.getPermission(ServerPlayer, PermissionNode, PermissionDynamicContext[])Queries a player's permission for a given node and contexts
Warning: PermissionNodes must be registered using the
PermissionGatherEvent.Nodesevent before querying.- Type Parameters:
T- type of the queried PermissionNode- Parameters:
player- player for which you want to check permissionsnode- the PermissionNode for which you want to querycontext- optional array of PermissionDynamicContext, single entries will be ignored if they weren't registered to the node- Returns:
- a value of type
<T>, that the combination of Player and PermissionNode map to.
-
getOfflinePermission
<T> T getOfflinePermission(UUID player, PermissionNode<T> node, PermissionDynamicContext<?>... context) - Type Parameters:
T- type of the queried PermissionNode- Parameters:
player- offline player for which you want to check permissionsnode- the PermissionNode for which you want to querycontext- optional array of PermissionDynamicContext, single entries will be ignored if they weren't registered to the node- Returns:
- a value of type
<T>, that the combination of Player and PermissionNode map to.
-