Interface PersonSearchSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, PersonQuerySession

public interface PersonSearchSession extends PersonQuerySession

This session provides methods for searching Person objects. The search query is constructed using the PersonQuery . The person record Type also specifies the record for the person query.

getPersonsByQuery() is the basic search method and returns a list of Person elements. A more advanced search may be performed with getPersonsBySearch() . It accepts a PersonSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getPersonsBySearch() returns a PersonSearchResults that can be used to access the resulting PersonList or be used to perform a search within the result set through PersonSearch .

This session defines views that offer differing behaviors for searching.

  • federated realm view: searches include persons in realms of which this realm is an ancestor in the realm hierarchy
  • isolated realm view: searches are restricted to persons in this realm

Persons may have a query record indicated by their respective record types. The query record is accessed via the PersonQuery . The returns in this session may not be cast directly to these interfaces.

  • Method Details

    • getPersonSearch

      PersonSearch getPersonSearch()
      Gets a person search.
      Returns:
      the person search
      Compliance:
      mandatory - This method must be implemented.
    • getPersonSearchOrder

      PersonSearchOrder getPersonSearchOrder()
      Gets a person search order. The PersonSearchOrder is supplied to a PersonSearch to specify the ordering of results.
      Returns:
      the person search order
      Compliance:
      mandatory - This method must be implemented.
    • getPersonsBySearch

      PersonSearchResults getPersonsBySearch(PersonQuery personQuery, PersonSearch personSearch) throws OperationFailedException, PermissionDeniedException
      Gets the search results matching the given search.
      Parameters:
      personQuery - the person query
      personSearch - the person search
      Returns:
      the search results
      Throws:
      NullArgumentException - personQuery or personSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - personQuery or personSearch is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getPersonQueryFromInspector

      PersonQuery getPersonQueryFromInspector(PersonQueryInspector personQueryInspector)
      Gets a person query from an inspector. The inspector is available from a PersonSearchResults .
      Parameters:
      personQueryInspector - a person query inspector
      Returns:
      the person query
      Throws:
      NullArgumentException - personQueryInspector is null
      UnsupportedException - personQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.