summaryrefslogtreecommitdiffstats
path: root/EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java
diff options
context:
space:
mode:
authorementalo <ementalodev@gmx.co.uk>2012-05-28 00:37:28 +0100
committerementalo <ementalodev@gmx.co.uk>2012-05-28 00:37:28 +0100
commit373a48da5412c6005f7ad2fe4bec41c68d4eb2a2 (patch)
tree3ebc11bffcb1dde3f3bd338fca97656d03511e70 /EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java
parent45c1e347b0698318ebd3772c540a9a52b6509daf (diff)
parentb69a16bcf0abac1ebd2ca3d35520cfcb5b433e88 (diff)
downloadEssentials-373a48da5412c6005f7ad2fe4bec41c68d4eb2a2.tar
Essentials-373a48da5412c6005f7ad2fe4bec41c68d4eb2a2.tar.gz
Essentials-373a48da5412c6005f7ad2fe4bec41c68d4eb2a2.tar.lz
Essentials-373a48da5412c6005f7ad2fe4bec41c68d4eb2a2.tar.xz
Essentials-373a48da5412c6005f7ad2fe4bec41c68d4eb2a2.zip
Master -> 3.0
Diffstat (limited to 'EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java')
-rw-r--r--EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java81
1 files changed, 81 insertions, 0 deletions
diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java b/EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java
new file mode 100644
index 000000000..2404e165f
--- /dev/null
+++ b/EssentialsProtect/src/com/earth2me/essentials/protect/Permissions.java
@@ -0,0 +1,81 @@
+package com.earth2me.essentials.protect;
+
+import com.earth2me.essentials.utils.Util;
+import com.earth2me.essentials.api.IPermission;
+import java.util.Locale;
+import org.bukkit.command.CommandSender;
+import org.bukkit.permissions.Permission;
+import org.bukkit.permissions.PermissionDefault;
+
+
+public enum Permissions implements IPermission
+{
+ ALERTS,
+ ALERTS_NOTRIGGER,
+ ADMIN,
+ BUILD(PermissionDefault.TRUE),
+ ENTITYTARGET(PermissionDefault.TRUE),
+ INTERACT(PermissionDefault.TRUE),
+ OWNERINFO,
+ PVP(PermissionDefault.TRUE),
+ PREVENTDAMAGE_FALL(PermissionDefault.FALSE),
+ PREVENTDAMAGE_CREEPER(PermissionDefault.FALSE),
+ PREVENTDAMAGE_CONTACT(PermissionDefault.FALSE),
+ PREVENTDAMAGE_FIREBALL(PermissionDefault.FALSE),
+ PREVENTDAMAGE_PROJECTILES(PermissionDefault.FALSE),
+ PREVENTDAMAGE_LAVADAMAGE(PermissionDefault.FALSE),
+ PREVENTDAMAGE_TNT(PermissionDefault.FALSE),
+ PREVENTDAMAGE_SUFFOCATION(PermissionDefault.FALSE),
+ PREVENTDAMAGE_FIRE(PermissionDefault.FALSE),
+ PREVENTDAMAGE_DROWNING(PermissionDefault.FALSE),
+ PREVENTDAMAGE_LIGHTNING(PermissionDefault.FALSE),
+ PREVENTDAMAGE_NONE(PermissionDefault.FALSE),
+ RAILS(PermissionDefault.TRUE),
+ USEFLINTSTEEL(PermissionDefault.TRUE);
+ private static final String base = "essentials.protect.";
+ private final String permission;
+ private final PermissionDefault defaultPerm;
+ private transient Permission bukkitPerm = null;
+
+ private Permissions()
+ {
+ this(PermissionDefault.OP);
+ }
+
+ private Permissions(final PermissionDefault defaultPerm)
+ {
+ permission = base + toString().toLowerCase(Locale.ENGLISH).replace('_', '.');
+ this.defaultPerm = defaultPerm;
+ }
+
+ @Override
+ public String getPermission()
+ {
+ return permission;
+ }
+
+ @Override
+ public Permission getBukkitPermission()
+ {
+ if (bukkitPerm != null)
+ {
+ return bukkitPerm;
+ }
+ else
+ {
+ return Util.registerPermission(getPermission(), getPermissionDefault());
+ }
+ }
+
+ @Override
+ public PermissionDefault getPermissionDefault()
+ {
+ return this.defaultPerm;
+ }
+
+ @Override
+ public boolean isAuthorized(CommandSender sender)
+ {
+ return sender.hasPermission(getBukkitPermission());
+ }
+}