private void calculatePermissionDefault(Permission perm) { if ((perm.getDefault() == PermissionDefault.OP) || (perm.getDefault() == PermissionDefault.TRUE)) { defaultPerms.get(true).add(perm); dirtyPermissibles(true); } if ((perm.getDefault() == PermissionDefault.NOT_OP) || (perm.getDefault() == PermissionDefault.TRUE)) { defaultPerms.get(false).add(perm); dirtyPermissibles(false); } }
public boolean hasPermission(Permission perm) { if (perm == null) { throw new IllegalArgumentException("Permission cannot be null"); } String name = perm.getName().toLowerCase(); if (isPermissionSet(name)) { return permissions.get(name).getValue(); } return perm.getDefault().getValue(isOp()); }
public boolean hasPermission(String inName) { if (inName == null) { throw new IllegalArgumentException("Permission name cannot be null"); } String name = inName.toLowerCase(); if (isPermissionSet(name)) { return permissions.get(name).getValue(); } else { Permission perm = Bukkit.getServer().getPluginManager().getPermission(name); if (perm != null) { return perm.getDefault().getValue(isOp()); } else { return Permission.DEFAULT_PERMISSION.getValue(isOp()); } } }
/** * Checks the permission from dinnerperms * * @param perms Permissible to check for * @param permission The permission to check * @return -1 if the permission is explicitly denied, 1 if the permission is allowed, * 0 if the permission is denied by a default. */ public int internalHasPermission(Permissible perms, String permission) { if (perms.isPermissionSet(permission)) { return perms.hasPermission(permission) ? 1 : -1; } else { Permission perm = server.getPluginManager().getPermission(permission); if (perm != null) { return perm.getDefault().getValue(perms.isOp()) ? 1 : 0; } else { return 0; } } }
private void calculatePermissionDefault(Permission perm) { if ((perm.getDefault() == PermissionDefault.OP) || (perm.getDefault() == PermissionDefault.TRUE)) { defaultPerms.get(true).add(perm); dirtyPermissibles(true); } if ((perm.getDefault() == PermissionDefault.NOT_OP) || (perm.getDefault() == PermissionDefault.TRUE)) { defaultPerms.get(false).add(perm); dirtyPermissibles(false); } }
@Override public Set<Permission> getDefaultPermissions(boolean op) { Set<Permission> permissions = new HashSet<>(); for (Permission permission : this.permissions) { PermissionDefault permissionDefault = permission.getDefault(); if (permissionDefault == PermissionDefault.TRUE) permissions.add(permission); else if (op && permissionDefault == PermissionDefault.OP) permissions.add(permission); } return permissions; }
List<Permission> pd = plugin.getDescription().getPermissions(); for(Permission p : pd) { perdefs.put(p.getName(), p.getDefault() == PermissionDefault.TRUE);
@Override public Permission put(String k, final Permission v) { for (Map.Entry<String, Boolean> ent : v.getChildren().entrySet()) { childParentMapping.put(ent.getKey(), new SimpleEntry<>(v.getName(), ent.getValue())); } FieldReplacer<Permission, Map> repl = getFieldReplacer(v); repl.set(v, new NotifyingChildrenMap(v)); if (v.getDefault() == PermissionDefault.TRUE || v.getDefault() == PermissionDefault.FALSE) { plugin.getManager().getSubjects(PermissionsEx.SUBJECTS_DEFAULTS) .transientData() .update(PermissionsEx.SUBJECTS_USER, input -> input.setPermission(PermissionsEx.GLOBAL_CONTEXT, v.getName(), v.getDefault() == PermissionDefault.TRUE ? 1 : -1)); } return super.put(k, v); }
public boolean hasPermission(Permission perm) { if (perm == null) { throw new IllegalArgumentException("Permission cannot be null"); } String name = perm.getName().toLowerCase(); if (isPermissionSet(name)) { return permissions.get(name).getValue(); } return perm.getDefault().getValue(isOp()); }
@Override public boolean handlePermission(CommandSender sender, String permission) { org.bukkit.permissions.Permission perm = Bukkit.getPluginManager().getPermission(permission); if (perm == null) { return false; } switch (perm.getDefault()) { case TRUE : this.hasTRUE = true; break; case OP : this.hasOP = true; break; case NOT_OP : this.hasNOTOP = true; break; default: break; } if (hasOP && hasNOTOP) { hasTRUE = true; } // Quit checking if we found out it's TRUE return hasTRUE; } }
/** * Loads a single permission using a Permission * * @param permission to load * @return Permission that was loaded */ public final Permission loadPermission(Permission permission) { return this.loadPermission(permission.getName(), permission.getDefault(), permission.getDescription()); }
@Override public Permission remove(Object k) { final Permission ret = super.remove(k); if (ret != null) { removeAllChildren(k.toString()); getFieldReplacer(ret).set(ret, new LinkedHashMap<>(ret.getChildren())); if (ret.getDefault() == PermissionDefault.TRUE || ret.getDefault() == PermissionDefault.FALSE) { plugin.getManager().getSubjects(PermissionsEx.SUBJECTS_DEFAULTS) .transientData() .update(PermissionsEx.SUBJECTS_USER, input -> input.setPermission(PermissionsEx.GLOBAL_CONTEXT, ret.getName(), 0)); } } return ret; }
public void restore() { // (Don't skip resetting, as there could be fall-back aliases.) // Command registered = CommandUtil.getCommand(label); // if (registered == null || registered != command) return; if (!label.equalsIgnoreCase(command.getLabel().trim().toLowerCase())) { command.setLabel(label); } command.setPermission(permission); if (permission != null && permissionDefault != null) { Permission perm = Bukkit.getPluginManager().getPermission(permission); if (perm != null && perm.getDefault() != permissionDefault) { perm.setDefault(permissionDefault); } } command.setPermissionMessage(permissionMessage); } }
public boolean hasPermission(String inName) { if (inName == null) { throw new IllegalArgumentException("Permission name cannot be null"); } String name = inName.toLowerCase(); if (isPermissionSet(name)) { return permissions.get(name).getValue(); } else { Permission perm = Bukkit.getServer().getPluginManager().getPermission(name); if (perm != null) { return perm.getDefault().getValue(isOp()); } else { return Permission.DEFAULT_PERMISSION.getValue(isOp()); } } }
changed.add(new CommandProtectionEntry(command, lcLabel, cmdPermName, cmdPerm.getDefault(), command.getPermissionMessage()));
@Override public boolean handlePermission(CommandSender sender, String permission) { // Initialize the permission (and it's default) prior to check org.bukkit.permissions.Permission perm = getPermission(permission); // Resort back to the default logic if (this.vaultEnabled) { // On a new line to avoid possible preliminary field access if (!this.vaultPermission.hasSuperPermsCompat()) { // Use a call here // First, make sure to handle our permission defaults if (perm.getDefault().getValue(sender.isOp())) { return true; } // Handle the remainder using Vault if (sender instanceof Player) { Player p = (Player) sender; return this.vaultPermission.playerHas(p.getWorld(), p.getName(), permission); } else { return this.vaultPermission.has(sender, permission); } } } // Resort to the simpler Bukkit Super Permissions return sender.hasPermission(permission); }