Interface ParticipantSearchSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, ParticipantQuerySession
This session provides methods for searching Participants. The
search query is constructed using the ParticipantQuery. The
participant record Type also specifies the record for the
participant query.
getParticipantsByQuery() is the basic search method and returns a
list of Participant elements. A more advanced search may be
performed with getParticipantsBySearch(). It accepts a
ParticipantSearch in addition to the query for the purpose of specifying
additional options affecting the entire search, such as ordering.
getParticipantsBySearch() returns a ParticipantSearchResults that
can be used to access the resulting ParticipantList or be used to
perform a search within the result set through ParticipantSearch.
This session defines views that offer differing behaviors for searching.
- federated catalogue view: searches include participants in catalogues of which this catalogue is an ancestor in the catalogue hierarchy
- isolated catalogue view: searches are restricted to participants in this catalogue
Participants may have a query record indicated by their respective
record types. The query record is accessed via the
ParticipantQuery. The returns in this session may not be cast directly to
these interfaces.
Like all OsidSessions, ParticipantSearchSessions are
dedicated to single processing threads and a single authenticated user.
-
Method Summary
Modifier and TypeMethodDescriptiongetParticipantQueryFromInspector(ParticipantQueryInspector participantQueryInspector) Gets the participant query inspector.getParticipantsBySearch(ParticipantQuery participantQuery, ParticipantSearch participantSearch) Gets the search results matching the given search.Gets a participant search.Gets a participant search order.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatTypes, getLocales, isAuthenticated, startTransaction, supportsTransactionsMethods inherited from interface ParticipantQuerySession
canSearchParticipants, getCatalogue, getCatalogueId, getParticipantQuery, getParticipantsByQuery, useFederatedCatalogueView, useIsolatedCatalogueView
-
Method Details
-
getParticipantSearch
ParticipantSearch getParticipantSearch()Gets a participant search.- Returns:
- the participant search
- Compliance:
mandatory- This method must be implemented.
-
getParticipantSearchOrder
ParticipantSearchOrder getParticipantSearchOrder()Gets a participant search order. TheParticipantSearchOrderis supplied to aParticipantSearchto specify the ordering of results.- Returns:
- the participant search order
- Compliance:
mandatory- This method must be implemented.
-
getParticipantsBySearch
ParticipantSearchResults getParticipantsBySearch(ParticipantQuery participantQuery, ParticipantSearch participantSearch) throws OperationFailedException, PermissionDeniedException Gets the search results matching the given search.- Parameters:
participantQuery- the participant queryparticipantSearch- the participant search- Returns:
- the search results
- Throws:
NullArgumentException-participantQueryorparticipantSearchisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failureUnsupportedException-participantQueryorparticipantSearchis not of this service- Compliance:
mandatory- This method must be implemented.
-
getParticipantQueryFromInspector
ParticipantQuery getParticipantQueryFromInspector(ParticipantQueryInspector participantQueryInspector) Gets the participant query inspector.- Parameters:
participantQueryInspector- a participant query inspector- Returns:
- the participant query
- Throws:
NullArgumentException-participantQueryInspectorisnullUnsupportedException-participantQueryInspectoris not of this service- Compliance:
mandatory- This method must be implemented.
-