public boolean hasPermission(Identity identity, String expPerm) { String currentUser = identity.getUserId(); if (superUser_.equals(currentUser)) { return true; } if (expPerm == null) { return false; } if (EVERYONE.equals(expPerm)) { return true; } Permission permission = new Permission(); permission.setPermissionExpression(expPerm); String groupId = permission.getGroupId(); if ((currentUser == null || currentUser.equals(IdentityConstants.ANONIM)) && groupId.equals(guestGroup_)) { return true; } String membership = permission.getMembership(); return identity.isMemberOf(groupId, membership); }