Interface ProvisionableSearchSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession, ProvisionableQuerySession

public interface ProvisionableSearchSession extends ProvisionableQuerySession

This session provides methods for searching among Provisionable objects. The search query is constructed using the ProvisionableQuery .

getProvisionablesByQuery() is the basic search method and returns a list of Provisionables . A more advanced search may be performed with getProvisionablesBySearch() .It accepts an ProvisionableSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getProvisionablesBySearch() returns an ProvisionableSearchResults that can be used to access the resulting ProvisionableList or be used to perform a search within the result set through ProvisionableSearch .

This session defines views that offer differing behaviors for searching.

  • federated distributor view: searches include provisionables in distributors of which this distributor is an ancestor in the distributor hierarchy
  • isolated distributor view: searches are restricted to provisionables in this distributor

Provisionables may have a query record indicated by their respective record types. The query record is accessed via the ProvisionableQuery .

  • Method Details

    • getProvisionableSearch

      ProvisionableSearch getProvisionableSearch()
      Gets a provisionable search.
      Returns:
      the provisionable search
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionableSearchOrder

      ProvisionableSearchOrder getProvisionableSearchOrder()
      Gets a provisionable search order. The ProvisionableSearchOrder is supplied to a ProvisionableSearch to specify the ordering of results.
      Returns:
      the provisionable search order
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionablesBySearch

      ProvisionableSearchResults getProvisionablesBySearch(ProvisionableQuery provisionableQuery, ProvisionableSearch provisionableSearch) throws OperationFailedException, PermissionDeniedException
      Gets the search results matching the given search query using the given search.
      Parameters:
      provisionableQuery - the provisionable query
      provisionableSearch - the provisionable search
      Returns:
      the returned search results
      Throws:
      NullArgumentException - provisionableQuery or provisionableSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - provisionableQuery or provisionableSearch is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getProvisionableQueryFromInspector

      ProvisionableQuery getProvisionableQueryFromInspector(ProvisionableQueryInspector provisionableQueryInspector)
      Gets a provisionable query from an inspector. The inspector is available from a ProvisionableSearchResults .
      Parameters:
      provisionableQueryInspector - a provisionable query inspector
      Returns:
      the provisionable query
      Throws:
      NullArgumentException - provisionableQueryInspector is null
      UnsupportedException - provisionableQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.