public Set<Permission> getActivePermissions() { Set<Permission> perm = new LinkedHashSet<>(); perm.add(Permission.valueOf(getFQRN())); perm.addAll(getActivePermissions(getRealm())); for (Role r = this; r.getParent() != null; ) { r = r.getParent(); perm.addAll(r.getActivePermissions(getRealm())); } return perm; }