Interface AgendaQuery

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

public interface AgendaQuery extends OsidRuleQuery

This is the query for searching agendas. Each method match 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 agendas assigned to engines.
      Parameters:
      engineId - the 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 a 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. 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.
    • getAgendaQueryRecord

      AgendaQueryRecord getAgendaQueryRecord(Type agendaRecordType) throws OperationFailedException, PermissionDeniedException
      Gets the agenda query record corresponding to the given Agenda record Type .Multiple record retrievals produce a nested OR term.
      Parameters:
      agendaRecordType - an agenda record type
      Returns:
      the agenda query record
      Throws:
      NullArgumentException - agendaRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - hasRecordType(agendaRecordType) is false
      Compliance:
      mandatory - This method must be implemented.