[ https://issues.apache.org/jira/browse/SYNCOPE-902?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15382066#comment-15382066 ]
ASF subversion and git services commented on SYNCOPE-902: --------------------------------------------------------- Commit 31dfc1c51663ee08588dbf671a95148cee257c1a in syncope's branch refs/heads/master from [~ilgrosso] [ https://git-wip-us.apache.org/repos/asf?p=syncope.git;h=31dfc1c ] [SYNCOPE-902] Feature provided > Provide helper method to retrieve all the groups of a user > ---------------------------------------------------------- > > Key: SYNCOPE-902 > URL: https://issues.apache.org/jira/browse/SYNCOPE-902 > Project: Syncope > Issue Type: Improvement > Components: client, console, core > Affects Versions: 2.0.0-M4 > Reporter: gonzalad > Assignee: Francesco Chicchiriccò > Priority: Minor > Fix For: 2.0.0 > > > Syncope could provide a helper method to retrieve all the groups of a user. > For the moment, we need to code something like : > {code} > UserTO userTO = ... > List<GroupTO> groupTOs = Collections.<GroupTO> emptyList(); > List<Long> keys = userTO.getMembershipMap().entrySet().stream() > .filter(entry -> "GROUP".equals(entry.getValue().getRightType())) > .map(entry -> > entry.getValue().getRightKey()).collect(Collectors.toList()); > if (keys.size() > 0) { > // cannot say I like the next 2 lines > Long firstKey = keys.get(0); > keys.remove(0); > String fiql = SyncopeClient.getGroupSearchConditionBuilder().is("key") > .equalTo(firstKey, keys.toArray(new Long[keys.size()])).query(); > PagedResult<GroupTO> groupTOsPage = > syncopeClient.getService(GroupService.class) > .search(new > AnySearchQuery.Builder().realm(SyncopeConstants.ROOT_REALM).fiql(fiql).build()); > groupTOs = (List<GroupTO>) groupTOsPage.getResult(); > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)