mirror of
https://github.com/EssentialsX/Essentials.git
synced 2025-02-10 17:31:24 +01:00
Handle permission check failures better.
This commit is contained in:
parent
5c280e7cb7
commit
adf3755abb
@ -139,8 +139,10 @@ public class Essentials extends JavaPlugin implements IEssentials
|
|||||||
final int versionNumber = Integer.parseInt(versionMatch.group(1));
|
final int versionNumber = Integer.parseInt(versionMatch.group(1));
|
||||||
if (versionNumber < BUKKIT_VERSION && versionNumber > 100)
|
if (versionNumber < BUKKIT_VERSION && versionNumber > 100)
|
||||||
{
|
{
|
||||||
|
LOGGER.log(Level.SEVERE, "* ! * ! * ! * ! * ! * ! * ! * ! * ! *");
|
||||||
LOGGER.log(Level.SEVERE, _("notRecommendedBukkit"));
|
LOGGER.log(Level.SEVERE, _("notRecommendedBukkit"));
|
||||||
LOGGER.log(Level.SEVERE, _("requiredBukkit", Integer.toString(BUKKIT_VERSION)));
|
LOGGER.log(Level.SEVERE, _("requiredBukkit", Integer.toString(BUKKIT_VERSION)));
|
||||||
|
LOGGER.log(Level.SEVERE, "* ! * ! * ! * ! * ! * ! * ! * ! * ! *");
|
||||||
this.setEnabled(false);
|
this.setEnabled(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -71,8 +71,14 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
return ess.getPermissionsHandler().hasPermission(base, node);
|
return ess.getPermissionsHandler().hasPermission(base, node);
|
||||||
}
|
}
|
||||||
|
catch (Exception ex) {
|
||||||
|
ess.getLogger().log(Level.SEVERE, "Permission System Error: " + ess.getPermissionsHandler().getName() + " returned: " + ex.getMessage());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void healCooldown() throws Exception
|
public void healCooldown() throws Exception
|
||||||
{
|
{
|
||||||
|
@ -3,6 +3,7 @@ package com.earth2me.essentials.perm;
|
|||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import org.anjocaido.groupmanager.GroupManager;
|
import org.anjocaido.groupmanager.GroupManager;
|
||||||
|
import org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder;
|
||||||
import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
|
import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
@ -20,7 +21,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public String getGroup(final Player base)
|
public String getGroup(final Player base)
|
||||||
{
|
{
|
||||||
final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
final AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@ -31,7 +32,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public List<String> getGroups(final Player base)
|
public List<String> getGroups(final Player base)
|
||||||
{
|
{
|
||||||
final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
final AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@ -42,7 +43,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public boolean canBuild(final Player base, final String group)
|
public boolean canBuild(final Player base, final String group)
|
||||||
{
|
{
|
||||||
final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
final AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
@ -53,7 +54,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public boolean inGroup(final Player base, final String group)
|
public boolean inGroup(final Player base, final String group)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
@ -64,7 +65,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public boolean hasPermission(final Player base, final String node)
|
public boolean hasPermission(final Player base, final String node)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
@ -75,7 +76,7 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public String getPrefix(final Player base)
|
public String getPrefix(final Player base)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@ -86,11 +87,21 @@ public class GroupManagerHandler implements IPermissionsHandler
|
|||||||
@Override
|
@Override
|
||||||
public String getSuffix(final Player base)
|
public String getSuffix(final Player base)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
|
AnjoPermissionsHandler handler = getHandler(base);
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return handler.getUserSuffix(base.getName());
|
return handler.getUserSuffix(base.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private AnjoPermissionsHandler getHandler(final Player base)
|
||||||
|
{
|
||||||
|
final WorldsHolder holder = groupManager.getWorldsHolder();
|
||||||
|
if (holder == null)
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return holder.getWorldPermissions(base);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user