Interface HierarchyQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidCatalogQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, OsidSourceableQuery, Suppliable

public interface HierarchyQuery extends OsidCatalogQuery

This is the query for searching hierarchies. Results are returned if all the specified elements match. Each method match request produces an AND term while multiple invocations of a method produces a nested OR , except for accessing the HierarchyQuery record.

  • Method Details

    • matchNodeId

      void matchNodeId(Id id, boolean match)
      Matches an Id of a node in this hierarchy. Multiple nodes can be added to this query which behave as a boolean AND .
      Parameters:
      id - Id to match
      match - true if a positive match, false for negative match
      Throws:
      NullArgumentException - id is null
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyNodeId

      void matchAnyNodeId(boolean match)
      Matches hierarchies with any node.
      Parameters:
      match - true to match hierarchies with any nodes, false to match hierarchies with no nodes
      Compliance:
      mandatory - This method must be implemented.
    • clearNodeIdTerms

      void clearNodeIdTerms()
      Clears the node Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • getHierarchyQueryRecord

      HierarchyQueryRecord getHierarchyQueryRecord(Type hierarchyRecordType) throws OperationFailedException
      Gets the hierarchy record query corresponding to the given Hierarchy record Type . Multiple record retrievals of the same type may return the same underlying object and do not result in adding terms to the query. Multiple record retrievals of different types add AND terms to the other elements set in this form.
      Parameters:
      hierarchyRecordType - a hierarchy record type
      Returns:
      the hierarchy query record
      Throws:
      NullArgumentException - hierarchyRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(hierarchyRecordType) is false
      Compliance:
      mandatory - This method must be implemented.