Interface EngineQuery

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

public interface EngineQuery extends OsidCatalogQuery

This is the query for searching for engines. Each method specifies an AND term while multiple invocations of the same method produce a nested OR .

  • Method Details

    • matchRuleId

      void matchRuleId(Id ruleId, boolean match)
      Sets the rule Id for this query to match rules assigned to engines.
      Parameters:
      ruleId - a rule Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - ruleId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRuleIdTerms

      void clearRuleIdTerms()
      Clears the rule Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsRuleQuery

      boolean supportsRuleQuery()
      Tests if a rule query is available.
      Returns:
      true if a rule query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getRuleQuery

      RuleQuery getRuleQuery()
      Gets the query for a rule.
      Returns:
      the rule query
      Throws:
      UnimplementedException - supportsRuleQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsRuleQuery()} is {@code true} .
    • matchAnyRule

      void matchAnyRule(boolean match)
      Matches engines with any riule.
      Parameters:
      match - true to match engines with any rule,, false to match engines with no rules
      Compliance:
      mandatory - This method must be implemented.
    • clearRuleTerms

      void clearRuleTerms()
      Clears the rule query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorEngineId

      void matchAncestorEngineId(Id engineId, boolean match)
      Sets the engine Id for this query to match engines that have the specified engine as an ancestor.
      Parameters:
      engineId - an engine Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - engineId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorEngineIdTerms

      void clearAncestorEngineIdTerms()
      Clears the ancestor engine Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorEngineQuery

      boolean supportsAncestorEngineQuery()
      Tests if an EngineQuery is available.
      Returns:
      true if an engine query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorEngineQuery

      EngineQuery getAncestorEngineQuery()
      Gets the query for an engine. Multiple retrievals produce a nested OR term.
      Returns:
      the engine query
      Throws:
      UnimplementedException - supportsAncestorEngineQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorEngineQuery()} is {@code true} .
    • matchAnyAncestorEngine

      void matchAnyAncestorEngine(boolean match)
      Matches engines with any ancestor.
      Parameters:
      match - true to match engine with any ancestor, false to match root engines
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorEngineTerms

      void clearAncestorEngineTerms()
      Clears the ancestor engine query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantEngineId

      void matchDescendantEngineId(Id engineId, boolean match)
      Sets the engine Id for this query to match engines that have the specified engine as a descendant.
      Parameters:
      engineId - an engine Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - engineId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantEngineIdTerms

      void clearDescendantEngineIdTerms()
      Clears the descendant engine Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantEngineQuery

      boolean supportsDescendantEngineQuery()
      Tests if an EngineQuery is available.
      Returns:
      true if an engine query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantEngineQuery

      EngineQuery getDescendantEngineQuery()
      Gets the query for an engine. Multiple retrievals produce a nested OR term.
      Returns:
      the engine query
      Throws:
      UnimplementedException - supportsDescendantEngineQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantEngineQuery()} is {@code true} .
    • matchAnyDescendantEngine

      void matchAnyDescendantEngine(boolean match)
      Matches engines with any descendant.
      Parameters:
      match - true to match engine with any descendant, false to match leaf engines
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantEngineTerms

      void clearDescendantEngineTerms()
      Clears the descendant engine query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getEngineQueryRecord

      EngineQueryRecord getEngineQueryRecord(Type engineRecordType) throws OperationFailedException
      Gets the engine query record corresponding to the given Engine record Type .Multiple record retrievals produce a nested boolean OR term.
      Parameters:
      engineRecordType - an engine record type
      Returns:
      the engine query record
      Throws:
      NullArgumentException - engineRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(engineRecordType) is false
      Compliance:
      mandatory - This method must be implemented.