summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2011-10-29 02:06:27 +0100
committerKHobbits <rob@khobbits.co.uk>2011-10-29 02:06:27 +0100
commit7ae4fe70a1c401934f7596baa857b7d37fe409fe (patch)
tree95a8f8f051c75a5cfc8faa2115e92aac7b09bc77
parent1c254ce2f51793aceb5c9229cd1b3d188ceea3ee (diff)
downloadEssentials-7ae4fe70a1c401934f7596baa857b7d37fe409fe.tar
Essentials-7ae4fe70a1c401934f7596baa857b7d37fe409fe.tar.gz
Essentials-7ae4fe70a1c401934f7596baa857b7d37fe409fe.tar.lz
Essentials-7ae4fe70a1c401934f7596baa857b7d37fe409fe.tar.xz
Essentials-7ae4fe70a1c401934f7596baa857b7d37fe409fe.zip
GM permission handler...
Look mum, no bridge.
-rw-r--r--Essentials/nbproject/build-impl.xml14
-rw-r--r--Essentials/nbproject/genfiles.properties4
-rw-r--r--Essentials/nbproject/project.properties3
-rw-r--r--Essentials/nbproject/project.xml11
-rw-r--r--Essentials/src/com/earth2me/essentials/perm/GroupManagerHandler.java69
5 files changed, 98 insertions, 3 deletions
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:
<propertyfile file="${built-jar.properties}">
<entry key="${basedir}" value=""/>
</propertyfile>
+ <antcall target="-maybe-call-dep">
+ <param name="call.built.properties" value="${built-jar.properties}"/>
+ <param location="${project.EssentialsGroupManager}" name="call.subproject"/>
+ <param location="${project.EssentialsGroupManager}/build.xml" name="call.script"/>
+ <param name="call.target" value="jar"/>
+ <param name="transfer.built-jar.properties" value="${built-jar.properties}"/>
+ </antcall>
</target>
<target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/>
<target depends="init" name="-check-automatic-build">
@@ -1038,6 +1045,13 @@ is divided into following sections:
<propertyfile file="${built-clean.properties}">
<entry key="${basedir}" value=""/>
</propertyfile>
+ <antcall target="-maybe-call-dep">
+ <param name="call.built.properties" value="${built-clean.properties}"/>
+ <param location="${project.EssentialsGroupManager}" name="call.subproject"/>
+ <param location="${project.EssentialsGroupManager}/build.xml" name="call.script"/>
+ <param name="call.target" value="clean"/>
+ <param name="transfer.built-clean.properties" value="${built-clean.properties}"/>
+ </antcall>
</target>
<target depends="init" name="-do-clean">
<delete dir="${build.dir}"/>
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 @@
<libraries xmlns="http://www.netbeans.org/ns/ant-project-libraries/1">
<definitions>../lib/nblibraries.properties</definitions>
</libraries>
- <references xmlns="http://www.netbeans.org/ns/ant-project-references/1"/>
+ <references xmlns="http://www.netbeans.org/ns/ant-project-references/1">
+ <reference>
+ <foreign-project>EssentialsGroupManager</foreign-project>
+ <artifact-type>jar</artifact-type>
+ <script>build.xml</script>
+ <target>jar</target>
+ <clean-target>clean</clean-target>
+ <id>jar</id>
+ </reference>
+ </references>
</configuration>
</project>
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<String> 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());
+ }
+}