mirror of
https://github.com/AuthMe/AuthMeReloaded.git
synced 2025-03-02 10:41:43 +01:00
Created it's own listener for the Permissions Manager
This commit is contained in:
parent
ae9cd626a5
commit
44d50b1c59
@ -55,9 +55,6 @@ public class AuthMeServerListener implements Listener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Call the onPluginDisable method in the permissions manager
|
|
||||||
this.plugin.getPermissionsManager().onPluginDisable(event);
|
|
||||||
|
|
||||||
String pluginName = pluginInstance.getName();
|
String pluginName = pluginInstance.getName();
|
||||||
if (pluginName.equalsIgnoreCase("Essentials")) {
|
if (pluginName.equalsIgnoreCase("Essentials")) {
|
||||||
plugin.ess = null;
|
plugin.ess = null;
|
||||||
@ -89,9 +86,6 @@ public class AuthMeServerListener implements Listener {
|
|||||||
|
|
||||||
@EventHandler(priority = EventPriority.HIGHEST)
|
@EventHandler(priority = EventPriority.HIGHEST)
|
||||||
public void onPluginEnable(PluginEnableEvent event) {
|
public void onPluginEnable(PluginEnableEvent event) {
|
||||||
// Call the onPluginEnable method in the permissions manager
|
|
||||||
this.plugin.getPermissionsManager().onPluginEnable(event);
|
|
||||||
|
|
||||||
String pluginName = event.getPlugin().getName();
|
String pluginName = event.getPlugin().getName();
|
||||||
if (pluginName.equalsIgnoreCase("Essentials") || pluginName.equalsIgnoreCase("EssentialsSpawn")) {
|
if (pluginName.equalsIgnoreCase("Essentials") || pluginName.equalsIgnoreCase("EssentialsSpawn")) {
|
||||||
plugin.checkEssentials();
|
plugin.checkEssentials();
|
||||||
|
@ -57,6 +57,10 @@ public class PermissionsManager implements PermissionsService {
|
|||||||
* Logger instance.
|
* Logger instance.
|
||||||
*/
|
*/
|
||||||
private Logger log;
|
private Logger log;
|
||||||
|
/**
|
||||||
|
* The permissions manager Bukkit listener instance.
|
||||||
|
*/
|
||||||
|
private PermissionsManagerBukkitListener bukkitListener;
|
||||||
/**
|
/**
|
||||||
* Type of permissions system that is currently used.
|
* Type of permissions system that is currently used.
|
||||||
* Null if no permissions system is hooked and/or used.
|
* Null if no permissions system is hooked and/or used.
|
||||||
@ -82,6 +86,21 @@ public class PermissionsManager implements PermissionsService {
|
|||||||
this.server = server;
|
this.server = server;
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.log = log;
|
this.log = log;
|
||||||
|
|
||||||
|
// Create and register the Bukkit listener on the server if it's valid
|
||||||
|
if(this.server != null) {
|
||||||
|
// Create the Bukkit listener
|
||||||
|
this.bukkitListener = new PermissionsManagerBukkitListener(this);
|
||||||
|
|
||||||
|
// Get the plugin manager instance
|
||||||
|
PluginManager pluginManager = this.server.getPluginManager();
|
||||||
|
|
||||||
|
// Register the Bukkit listener
|
||||||
|
pluginManager.registerEvents(this.bukkitListener, this.plugin);
|
||||||
|
|
||||||
|
// Show a status message.
|
||||||
|
//this.log.info("Started permission plugins state listener!");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -263,7 +282,14 @@ public class PermissionsManager implements PermissionsService {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the permissions manager Bukkit listener instance.
|
||||||
|
*
|
||||||
|
* @return Listener instance.
|
||||||
|
*/
|
||||||
|
public PermissionsManagerBukkitListener getListener() {
|
||||||
|
return this.bukkitListener;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the command sender has permission for the given permissions node. If no permissions system is used or
|
* Check if the command sender has permission for the given permissions node. If no permissions system is used or
|
||||||
|
@ -0,0 +1,85 @@
|
|||||||
|
package fr.xephi.authme.permission;
|
||||||
|
|
||||||
|
import org.bukkit.event.EventHandler;
|
||||||
|
import org.bukkit.event.Listener;
|
||||||
|
import org.bukkit.event.server.PluginDisableEvent;
|
||||||
|
import org.bukkit.event.server.PluginEnableEvent;
|
||||||
|
|
||||||
|
public class PermissionsManagerBukkitListener implements Listener {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The permissions manager instance.
|
||||||
|
*/
|
||||||
|
private PermissionsManager permissionsManager;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether the listener is enabled or not.
|
||||||
|
*/
|
||||||
|
private boolean enabled = true;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Constructor.\
|
||||||
|
*
|
||||||
|
* @param permissionsManager Permissions manager instance.
|
||||||
|
*/
|
||||||
|
public PermissionsManagerBukkitListener(PermissionsManager permissionsManager) {
|
||||||
|
this.permissionsManager = permissionsManager;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check whether the listener is enabled.
|
||||||
|
*
|
||||||
|
* @return True if the listener is enabled.
|
||||||
|
*/
|
||||||
|
public boolean isEnabled() {
|
||||||
|
return this.enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set whether the listener is enabled.
|
||||||
|
* Disabling the listener will stop the event handling until it's enabled again.
|
||||||
|
*
|
||||||
|
* @param enabled True if enabled, false if disabled.
|
||||||
|
*/
|
||||||
|
public void setEnabled(boolean enabled) {
|
||||||
|
this.enabled = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when a plugin is enabled.
|
||||||
|
*
|
||||||
|
* @param event Event reference.
|
||||||
|
*/
|
||||||
|
@EventHandler
|
||||||
|
public void onPluginEnable(PluginEnableEvent event) {
|
||||||
|
// Make sure the listener is enabled
|
||||||
|
if(!isEnabled())
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Make sure the permissions manager is set
|
||||||
|
if(this.permissionsManager == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Call the onPluginEnable method in the permissions manager
|
||||||
|
permissionsManager.onPluginEnable(event);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when a plugin is disabled.
|
||||||
|
*
|
||||||
|
* @param event Event reference.
|
||||||
|
*/
|
||||||
|
@EventHandler
|
||||||
|
public void onPluginDisable(PluginDisableEvent event) {
|
||||||
|
// Make sure the listener is enabled
|
||||||
|
if(!isEnabled())
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Make sure the permissions manager is set
|
||||||
|
if(this.permissionsManager == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Call the onPluginDisable method in the permissions manager
|
||||||
|
permissionsManager.onPluginDisable(event);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user