Interface RuleQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidOperableQuery, OsidQuery, OsidRuleQuery, Suppliable

public interface RuleQuery extends OsidRuleQuery

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

  • Method Details

    • matchEngineId

      void matchEngineId(Id engineId, boolean match)
      Sets the engine Id for this query to match rules assigned to engines.
      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.
    • clearEngineIdTerms

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

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

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

      void clearEngineTerms()
      Clears the engine query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getRuleQueryRecord

      RuleQueryRecord getRuleQueryRecord(Type ruleRecordType) throws OperationFailedException
      Gets the rule query record corresponding to the given Rule record Type .Multiple record retrievals produce a nested OR term.
      Parameters:
      ruleRecordType - a rule record type
      Returns:
      the rule query record
      Throws:
      NullArgumentException - ruleRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(ruleRecordType) is false
      Compliance:
      mandatory - This method must be implemented.