Interface NodeSearchSession

All Superinterfaces:
AutoCloseable, Closeable, NodeQuerySession, OsidSession, OsidSession

public interface NodeSearchSession extends NodeQuerySession

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

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

This session defines views that offer differing behaviors for searching.

  • federated graph view: searches include nodes in graphs of which this graph is an ancestor in the graph hierarchy
  • isolated graph view: searches are restricted to nodes in this graph

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

  • Method Details

    • getNodeSearch

      NodeSearch getNodeSearch()
      Gets a node search.
      Returns:
      the node search
      Compliance:
      mandatory - This method must be implemented.
    • getNodeSearchOrder

      NodeSearchOrder getNodeSearchOrder()
      Gets a node search order. The NodeSearchOrder is supplied to a NodeSearch to specify the ordering of results.
      Returns:
      the node search order
      Compliance:
      mandatory - This method must be implemented.
    • getNodesBySearch

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

      NodeQuery getNodeQueryFromInspector(NodeQueryInspector nodeQueryInspector)
      Gets a node query from an inspector. The inspector is available from a NodeSearchResults.
      Parameters:
      nodeQueryInspector - a node query inspector
      Returns:
      the node query
      Throws:
      NullArgumentException - nodeQueryInspector is null
      UnsupportedException - nodeQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.