Interface PermissionManager
public interface PermissionManager
Manages permission providers and default permission behavior.
The permission manager is the central point for permission plugin
integration. External plugins like LuckPerms register their
PermissionProvider here.
Default Behavior
When no permission provider is registered, the default behavior is:
- Console/RCON: All permissions granted
- Players: All permissions denied (or based on configured defaults)
Plugin Integration
// In your permission plugin's onEnable:
PermissionManager manager = Numdrassl.getProxy().getPermissionManager();
manager.setProvider(new MyPermissionProvider());
// In your permission plugin's onDisable:
manager.clearProvider();
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoidClears the current permission provider.createFunction(Player player) Creates a permission function for the given player.Gets the default permission function used when no provider is registered.getDefaultPermission(String permission) Gets the default value for a permission.Gets the currently registered permission provider.default booleanChecks if a permission provider is registered.voidregisterDefaultPermission(String permission, Tristate defaultValue) Registers a default permission value.voidsetDefaultFunction(PermissionFunction function) Sets the default permission function.voidsetProvider(PermissionProvider provider) Sets the permission provider.
-
Method Details
-
getProvider
Gets the currently registered permission provider.- Returns:
- the permission provider, or empty if none registered
-
setProvider
Sets the permission provider.Only one provider can be active at a time. Setting a new provider will replace the existing one.
- Parameters:
provider- the permission provider
-
clearProvider
void clearProvider()Clears the current permission provider.After calling this, the default permission behavior will be used.
-
hasProvider
default boolean hasProvider()Checks if a permission provider is registered.- Returns:
- true if a provider is registered
-
createFunction
Creates a permission function for the given player.If a provider is registered, delegates to it. Otherwise, returns the default permission function.
- Parameters:
player- the player- Returns:
- the permission function for this player
-
getDefaultFunction
Gets the default permission function used when no provider is registered.- Returns:
- the default permission function
-
setDefaultFunction
Sets the default permission function.This function is used when no permission provider is registered, or when the provider returns
Tristate.UNDEFINED.- Parameters:
function- the default permission function
-
registerDefaultPermission
Registers a default permission value.This sets the default value for a specific permission when no provider is registered or the provider returns UNDEFINED.
- Parameters:
permission- the permission stringdefaultValue- the default value
-
getDefaultPermission
-