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.