diff --git a/Essentials/nbproject/build-impl.xml b/Essentials/nbproject/build-impl.xml
index 21661c925..0816b04c9 100644
--- a/Essentials/nbproject/build-impl.xml
+++ b/Essentials/nbproject/build-impl.xml
@@ -601,6 +601,13 @@ is divided into following sections:
+
+
+
+
+
+
+
@@ -1038,6 +1045,13 @@ is divided into following sections:
+
+
+
+
+
+
+
diff --git a/Essentials/nbproject/genfiles.properties b/Essentials/nbproject/genfiles.properties
index 9242cfd2b..d39edfe18 100644
--- a/Essentials/nbproject/genfiles.properties
+++ b/Essentials/nbproject/genfiles.properties
@@ -3,8 +3,8 @@ build.xml.script.CRC32=3233ee78
build.xml.stylesheet.CRC32=28e38971@1.38.2.45
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
-nbproject/build-impl.xml.data.CRC32=4b596d89
-nbproject/build-impl.xml.script.CRC32=dbc81ee1
+nbproject/build-impl.xml.data.CRC32=a830bc14
+nbproject/build-impl.xml.script.CRC32=64a00ba6
nbproject/build-impl.xml.stylesheet.CRC32=0ae3a408@1.44.1.45
nbproject/profiler-build-impl.xml.data.CRC32=ab78ce15
nbproject/profiler-build-impl.xml.script.CRC32=abda56ed
diff --git a/Essentials/nbproject/project.properties b/Essentials/nbproject/project.properties
index 58d4e7241..0093f68f2 100644
--- a/Essentials/nbproject/project.properties
+++ b/Essentials/nbproject/project.properties
@@ -90,6 +90,7 @@ javac.classpath=\
${file.reference.bPermissions.jar}:\
${file.reference.PermissionsBukkit-1.2.jar}:\
${file.reference.lombok-0.10.1.jar}
+ ${reference.EssentialsGroupManager.jar}
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
@@ -127,6 +128,8 @@ jnlp.signing.keystore=
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=true
platform.active=default_platform
+project.EssentialsGroupManager=../EssentialsGroupManager
+reference.EssentialsGroupManager.jar=${project.EssentialsGroupManager}/dist/EssentialsGroupManager.jar
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
diff --git a/Essentials/nbproject/project.xml b/Essentials/nbproject/project.xml
index 354722f09..ac9690fc3 100644
--- a/Essentials/nbproject/project.xml
+++ b/Essentials/nbproject/project.xml
@@ -14,6 +14,15 @@
../lib/nblibraries.properties
-
+
+
+ EssentialsGroupManager
+ jar
+
+ jar
+ clean
+ jar
+
+
diff --git a/Essentials/src/com/earth2me/essentials/perm/GroupManagerHandler.java b/Essentials/src/com/earth2me/essentials/perm/GroupManagerHandler.java
new file mode 100644
index 000000000..038030879
--- /dev/null
+++ b/Essentials/src/com/earth2me/essentials/perm/GroupManagerHandler.java
@@ -0,0 +1,69 @@
+package com.earth2me.essentials.perm;
+
+import java.util.Arrays;
+import java.util.List;
+import org.bukkit.entity.Player;
+import org.bukkit.plugin.Plugin;
+
+import org.anjocaido.groupmanager.GroupManager;
+import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
+
+
+public class GroupManagerHandler implements IPermissionsHandler
+{
+ private final transient GroupManager groupManager;
+
+ public GroupManagerHandler(final Plugin permissionsPlugin)
+ {
+ groupManager = ((GroupManager)permissionsPlugin);
+ }
+
+ @Override
+ public String getGroup(final Player base)
+ {
+ final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.getGroup(base.getName());
+ }
+
+ @Override
+ public List getGroups(final Player base)
+ {
+ final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return Arrays.asList(handler.getGroups(base.getName()));
+ }
+
+ @Override
+ public boolean canBuild(final Player base, final String group)
+ {
+ final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.canUserBuild(base.getName());
+ }
+
+ @Override
+ public boolean inGroup(final Player base, final String group)
+ {
+ AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.inGroup(base.getName(), group);
+ }
+
+ @Override
+ public boolean hasPermission(final Player base, final String node)
+ {
+ AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.has(base, node);
+ }
+
+ @Override
+ public String getPrefix(final Player base)
+ {
+ AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.getUserPrefix(base.getName());
+ }
+
+ @Override
+ public String getSuffix(final Player base)
+ {
+ AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(base);
+ return handler.getUserSuffix(base.getName());
+ }
+}