Interface BlockSearchSession

All Superinterfaces:
AutoCloseable, BlockQuerySession, Closeable, OsidSession, OsidSession

public interface BlockSearchSession extends BlockQuerySession

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

getBlocksByQuery() is the basic search method and returns a list of Blocks. A more advanced search may be performed with getBlocksBySearch(). It accepts a BlockSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getBlocksBySearch() returns a BlockSearchResults that can be used to access the resulting BlockList or be used to perform a search within the result set through BlockSearch.

This session defines views that offer differing behaviors for searching.

  • federated oubliette view: searches include blocks in oubliettes of which this oubliette is an ancestor in the oubliette hierarchy
  • isolated oubliette view: searches are restricted to blocks in this oubliette

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

  • Method Details

    • getBlockSearch

      BlockSearch getBlockSearch()
      Gets a block search.
      Returns:
      the block search
      Compliance:
      mandatory - This method must be implemented.
    • getBlockSearchOrder

      BlockSearchOrder getBlockSearchOrder()
      Gets a block search order. The BlockSearchOrder is supplied to a BlockSearch to specify the ordering of results.
      Returns:
      the block search order
      Compliance:
      mandatory - This method must be implemented.
    • getBlocksBySearch

      Gets the search results matching the given search query using the given search.
      Parameters:
      blockQuery - the block query
      blockSearch - the block search
      Returns:
      the block search results
      Throws:
      NullArgumentException - blockQuery or blockSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - blockQuery or blockSearch is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getBlockQueryFromInspector

      BlockQuery getBlockQueryFromInspector(BlockQueryInspector blockQueryInspector)
      Gets a block query from an inspector. The inspector is available from a BlockSearchResults.
      Parameters:
      blockQueryInspector - a block query inspector
      Returns:
      the block query
      Throws:
      NullArgumentException - blockQueryInspector is null
      UnsupportedException - blockQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.