/** * Adds this permission to the specified parent permission. * <p> * If the parent permission does not exist, it will be created and * registered. * * @param name Name of the parent permission * @param value The value to set this permission to * @return Parent permission it created or loaded */ public Permission addParent(String name, boolean value) { PluginManager pm = Bukkit.getServer().getPluginManager(); String lname = name.toLowerCase(); Permission perm = pm.getPermission(lname); if (perm == null) { perm = new Permission(lname); pm.addPermission(perm); } addParent(perm, value); return perm; }
public static Permission registerPermission(Permission perm, boolean withLegacy) { Permission result = perm; try { Bukkit.getPluginManager().addPermission(perm); } catch (IllegalArgumentException ex) { result = Bukkit.getPluginManager().getPermission(perm.getName()); } if (withLegacy) { Permission legacy = new Permission(LEGACY_PREFIX + result.getName(), result.getDescription(), PermissionDefault.FALSE); legacy.getChildren().put(result.getName(), true); registerPermission(perm, false); } return result; }
@Override public void addPermission(Permission permission) { instance.addPermission(permission); }
private static void addDynamicPermission(String permissionName, PermissionDefault permissionDefault, PluginManager pluginManager) { Permission permission = new Permission(permissionName); permission.setDefault(permissionDefault); pluginManager.addPermission(permission); } }
@Override public void registerPermission(String permissionNode) { if (permissionNode != null) { try { ((BukkitLoader) loader).getServer().getPluginManager().addPermission(new Permission(permissionNode)); } catch (IllegalArgumentException e) { //Do nothing. We don't care if the permission was already registered. } } }
private void updateAndAdd(PluginManager pm, Permission permission) { Permission oldPerm = pm.getPermission(permission.getName()); if (oldPerm == null) { pm.addPermission(permission); } permission.recalculatePermissibles(); } }
private Permission fetchBukkitPermission() { // Create with lower case string representation anyway. final PluginManager pm = Bukkit.getPluginManager(); Permission permission = pm.getPermission(lowerCaseStringRepresentation); if (permission == null) { // Assume this one doesn't have children etc. permission = new Permission(lowerCaseStringRepresentation, PermissionUtil.AUTO_GENERATED, PermissionDefault.FALSE // Cautious, perhaps. ); pm.addPermission(permission); } return permission; }
public org.bukkit.permissions.Permission getPermission(String node) { org.bukkit.permissions.Permission perm = Bukkit.getPluginManager().getPermission(node); if (perm == null) { // Figure out what permission default to use // This is done by checking all *-names, and if they exist, using that default // =================================== // TRUE found or anything else: TRUE // NOT_OP AND OP found: TRUE // NOT_OP found: NOT_OP // OP found: OP // otherwise: FALSE // =================================== PermissionDefaultFinder finder = new PermissionDefaultFinder(); permCheckWildcard(finder, null, new StringBuilder(node.length()), node.split("\\."), 0); // Use permission default FALSE to avoid OP-players having automatic permissions for *-nodes perm = new org.bukkit.permissions.Permission(node, finder.getDefault()); Bukkit.getPluginManager().addPermission(perm); } return perm; }
/** * Adds this permission to the specified parent permission. * <p> * If the parent permission does not exist, it will be created and * registered. * * @param name Name of the parent permission * @param value The value to set this permission to * @return Parent permission it created or loaded */ public Permission addParent(String name, boolean value) { PluginManager pm = Bukkit.getServer().getPluginManager(); String lname = name.toLowerCase(); Permission perm = pm.getPermission(lname); if (perm == null) { perm = new Permission(lname); pm.addPermission(perm); } addParent(perm, value); return perm; }
/** * Registers the permissions. */ public static void register() { for (DPermission permission : values()) { Bukkit.getPluginManager().addPermission(new Permission(permission.getNode(), permission.isDefault())); } }
private void ensureSecondNamespaceIsPrepared() { Permission special = this.plugin.getServer().getPluginManager().getPermission("mv.bypass.gamemode.*"); if (special == null) { special = new Permission("mv.bypass.gamemode.*", PermissionDefault.FALSE); this.plugin.getServer().getPluginManager().addPermission(special); } }
public static org.bukkit.permissions.Permission getPermission(Permission permission) { org.bukkit.permissions.Permission bukkitPerm = Bukkit.getServer().getPluginManager().getPermission(permission.permission); if (bukkitPerm == null) { bukkitPerm = permission.getPermission(); try { Bukkit.getServer().getPluginManager().addPermission(bukkitPerm); } catch (IllegalArgumentException ignored) {} // this should never happen } return bukkitPerm; }
private void addToRootPermission(String rootPerm, String permStringChopped) { Permission rootPermission = this.plugin.getServer().getPluginManager().getPermission(rootPerm); if (rootPermission == null) { rootPermission = new Permission(rootPerm); this.plugin.getServer().getPluginManager().addPermission(rootPermission); } rootPermission.getChildren().put(permStringChopped + ".*", true); this.plugin.getServer().getPluginManager().recalculatePermissionDefaults(rootPermission); }
private void addToRootPermission(String rootPerm, String permStringChopped) { Permission rootPermission = this.plugin.getServer().getPluginManager().getPermission(rootPerm); if (rootPermission == null) { rootPermission = new Permission(rootPerm); this.plugin.getServer().getPluginManager().addPermission(rootPermission); } rootPermission.getChildren().put(permStringChopped + ".*", true); this.plugin.getServer().getPluginManager().recalculatePermissionDefaults(rootPermission); }
public static Permission registerPermission(Permission perm, boolean withLegacy) { Permission result = perm; try { Bukkit.getPluginManager().addPermission(perm); } catch (IllegalArgumentException ex) { result = Bukkit.getPluginManager().getPermission(perm.getName()); } if (withLegacy) { Permission legacy = new Permission(LEGACY_PREFIX + result.getName(), result.getDescription(), PermissionDefault.FALSE); legacy.getChildren().put(result.getName(), true); registerPermission(perm, false); } return result; }
this.plugin.getServer().getPluginManager().addPermission(parentPermission); this.plugin.getServer().getPluginManager().addPermission(actualPermission);
private void addToParentPerms(String permString) { String permStringChopped = permString.replace(".*", ""); String[] seperated = permStringChopped.split("\\."); String parentPermString = getParentPerm(seperated); if (parentPermString == null) { addToRootPermission("*", permStringChopped); addToRootPermission("*.*", permStringChopped); return; } Permission parentPermission = this.plugin.getServer().getPluginManager().getPermission(parentPermString); // Creat parent and grandparents if (parentPermission == null) { parentPermission = new Permission(parentPermString); this.plugin.getServer().getPluginManager().addPermission(parentPermission); this.addToParentPerms(parentPermString); } // Create actual perm. Permission actualPermission = this.plugin.getServer().getPluginManager().getPermission(permString); // Extra check just to make sure the actual one is added if (actualPermission == null) { actualPermission = new Permission(permString); this.plugin.getServer().getPluginManager().addPermission(actualPermission); } if (!parentPermission.getChildren().containsKey(permString)) { parentPermission.getChildren().put(actualPermission.getName(), true); this.plugin.getServer().getPluginManager().recalculatePermissionDefaults(parentPermission); } }
private void addToUpperLists(Permission perm) { Permission all = this.plugin.getServer().getPluginManager().getPermission("multiverse.*"); Permission allWorlds = this.plugin.getServer().getPluginManager().getPermission("multiverse.access.*"); Permission allExemption = this.plugin.getServer().getPluginManager().getPermission("multiverse.exempt.*"); if (allWorlds == null) { allWorlds = new Permission("multiverse.access.*"); this.plugin.getServer().getPluginManager().addPermission(allWorlds); } allWorlds.getChildren().put(perm.getName(), true); if (allExemption == null) { allExemption = new Permission("multiverse.exempt.*"); this.plugin.getServer().getPluginManager().addPermission(allExemption); } allExemption.getChildren().put(this.exempt.getName(), true); if (all == null) { all = new Permission("multiverse.*"); this.plugin.getServer().getPluginManager().addPermission(all); } all.getChildren().put("multiverse.access.*", true); all.getChildren().put("multiverse.exempt.*", true); this.plugin.getServer().getPluginManager().recalculatePermissionDefaults(all); this.plugin.getServer().getPluginManager().recalculatePermissionDefaults(allWorlds); }
/** * Registers permissions that depend on the user's configuration file (for MultipleAchievements; for instance for * stone breaks, achievement.count.breaks.stone will be registered). */ private void registerPermissions() { logger.info("Registering permissions..."); PluginManager pluginManager = Bukkit.getPluginManager(); for (MultipleAchievements category : MultipleAchievements.values()) { for (String section : mainConfig.getShallowKeys(category.toString())) { // Permission ignores metadata (eg. sand:1) for Breaks, Places and Crafts categories and don't take // spaces into account. section = StringUtils.deleteWhitespace(StringUtils.substringBefore(section, ":")); // Bukkit only allows permissions to be set once, check to ensure they were not previously set when // performing /aach reload. for (String groupElement : StringUtils.split(section, '|')) { String permissionNode = category.toPermName() + "." + groupElement; if (pluginManager.getPermission(permissionNode) == null) { pluginManager.addPermission(new Permission(permissionNode, PermissionDefault.TRUE)); } } } } }
/** * Adds a permission. * @param string The permission as {@link String}. * @param defaultValue The default-value. * @return The permission as {@link Permission}. */ public Permission addPermission(String string, PermissionDefault defaultValue) { if (this.plugin.getServer().getPluginManager().getPermission(string) == null) { Permission permission = new Permission(string, defaultValue); this.plugin.getServer().getPluginManager().addPermission(permission); this.addToParentPerms(string); } return this.plugin.getServer().getPluginManager().getPermission(string); }