/** * @param roles * @return new set with composite roles expanded */ public static Set<RoleModel> expandCompositeRoles(Set<RoleModel> roles) { Set<RoleModel> visited = new HashSet<>(); return roles.stream() .flatMap(roleModel -> RoleUtils.expandCompositeRolesStream(roleModel, visited)) .collect(Collectors.toSet()); }