Package com.atlassian.crowd.directory
Interface MultiValuesQueriesSupport
- All Known Subinterfaces:
InternalRemoteDirectory
public interface MultiValuesQueriesSupport
Interface supporting searches with multiple values to match.
-
Method Summary
Modifier and TypeMethodDescription<T> List<T>searchGroupRelationships(MembershipQuery<T> query) Searches for membership information.Searches forgroupsthat match the supplied query criteria.
-
Method Details
-
searchGroupRelationships
@Nonnull <T> List<T> searchGroupRelationships(MembershipQuery<T> query) throws OperationFailedException Searches for membership information. Similar toRemoteDirectory.searchGroupRelationships(MembershipQuery), but guarantees that multipleMembershipQuery.getEntityNamesToMatch()are supported.- Parameters:
query- query for memberships.- Returns:
- a List of Users or Groups or Strings depending on the query criteria. An empty List if there are no results. Results are ordered by entity name, case-insensitive.
- Throws:
OperationFailedException- underlying directory implementation failed to execute the operation.IllegalArgumentException- if the query is not a valid membership query
-
searchGroupRelationshipsGroupedByName
Searches forgroupsthat match the supplied query criteria. This method is similar tosearchGroupRelationships(MembershipQuery), but it additionally groups results by elements ofMembershipQuery.getEntityNamesToMatch().- Parameters:
query- EntityQuery for Entity.GROUP.- Returns:
Map<String, List<T>>of groups/groupnames matching the search criteria, grouped byMembershipQuery.getEntityNamesToMatch(). Results are ordered by entity name, case-insensitive. An emptywill be returned if no groups matching the criteria are found.Map- Throws:
OperationFailedException- if the underlying directory implementation failed to execute the operationIllegalArgumentException- if the query is not a valid group query
-