package toadmess.explosives;
import java.util.logging.Logger;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginManager;
import com.nijiko.permissions.PermissionHandler;
import com.nijikokun.bukkit.Permissions.Permissions;
public class Gatekeeper {
private static PermissionHandler permissionsHandler = null;
private static Logger log = null;
public static void onEnable(final PluginManager pm, final Logger logger) {
Gatekeeper.log = logger;
try {
final Plugin p = pm.getPlugin("Permissions");
if(p != null) {
Gatekeeper.permissionsHandler = ((Permissions) p).getHandler();
}
if(Gatekeeper.permissionsHandler != null) {
log.info("HigherExplosives: Using Permissions plugin that looks like version " + p.getDescription().getVersion());
} else {
log.info("HigherExplosives: Not using Permissions.");
}
} catch (final Throwable t) {
log.info("HigherExplosives: Couldn't catch hold of the Permissions plugin (because of "+ t.getClass().getName() +")");
Gatekeeper.permissionsHandler = null;
}
}
public static boolean hasPermission(final Player p, final String permission) {
if(Gatekeeper.permissionsHandler == null) {
return false;
}
return Gatekeeper.permissionsHandler.has(p, permission);
}
public static boolean inGroup(final Player p, final String group) {
if(Gatekeeper.permissionsHandler == null) {
return false;
}
return Gatekeeper.permissionsHandler.inGroup(p.getLocation().getWorld().getName(), p.getName(), group);
}
}