Interface ReceiptQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidExtensibleQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, OsidSubjugateableQuery, Suppliable

public interface ReceiptQuery extends OsidObjectQuery, OsidSubjugateableQuery

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

  • Method Details

    • matchMessageId

      void matchMessageId(Id messageId, boolean match)
      Sets the message Id for this query.
      Parameters:
      messageId - a message Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - messageId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearMessageIdTerms

      void clearMessageIdTerms()
      Clears the message Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsMessageQuery

      boolean supportsMessageQuery()
      Tests if a MessageQuery is available.
      Returns:
      true if a message query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getMessageQuery

      MessageQuery getMessageQuery()
      Gets the query for a message. Multiple retrievals produce a nested OR term.
      Returns:
      the message query
      Throws:
      UnimplementedException - supportsMessageQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsMessageQuery()} is {@code true} .
    • clearMessageTerms

      void clearMessageTerms()
      Clears the message terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchReceivedTime

      void matchReceivedTime(DateTime startTime, DateTime endTime, boolean match)
      Matches messages whose received time is between the supplied range inclusive.
      Parameters:
      startTime - start time
      endTime - end time
      match - true if for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - startTime is greater than endTime
      NullArgumentException - startTime or endTime is null
      Compliance:
      mandatory - This method must be implemented.
    • clearReceivedTimeTerms

      void clearReceivedTimeTerms()
      Clears the received time terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchReceivingAgentId

      void matchReceivingAgentId(Id agentId, boolean match)
      Matches the endpoint recipient of the message.
      Parameters:
      agentId - Id to match
      match - true if for a positive match, false for a negative match
      Throws:
      NullArgumentException - agentId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearReceivingAgentIdTerms

      void clearReceivingAgentIdTerms()
      Clears the receiving agent Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsReceivingAgentQuery

      boolean supportsReceivingAgentQuery()
      Tests if an AgentQuery is available for querying receiving agents.
      Returns:
      true if an agent query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getReceivingAgentQuery

      AgentQuery getReceivingAgentQuery()
      Gets the query for the receiving agent.
      Returns:
      the agent query
      Throws:
      UnimplementedException - supportsReceivingQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsReceivingQuery()} is {@code true} .
    • clearReceivingAgentTerms

      void clearReceivingAgentTerms()
      Clears the receiving agent terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchRecipientId

      void matchRecipientId(Id resourceId, boolean match)
      Matches any recipient of the message.
      Parameters:
      resourceId - Id to match
      match - true if for a positive match, false for a negative match
      Throws:
      NullArgumentException - resourceId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearRecipientIdTerms

      void clearRecipientIdTerms()
      Clears the recipient Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsRecipientQuery

      boolean supportsRecipientQuery()
      Tests if a ResourceQuery is available for querying recipients.
      Returns:
      true if a resource query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getRecipientQuery

      ResourceQuery getRecipientQuery()
      Gets the query for a recipient resource.
      Returns:
      the resource query
      Throws:
      UnimplementedException - supportsRecipientQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsRecipientQuery()} is {@code true} .
    • clearRecipientTerms

      void clearRecipientTerms()
      Clears the recipient terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchMailboxId

      void matchMailboxId(Id mailboxId, boolean match)
      Sets the mailbox Id for this query.
      Parameters:
      mailboxId - the mailbox Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - mailboxId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearMailboxIdTerms

      void clearMailboxIdTerms()
      Clears the mailbox Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsMailboxQuery

      boolean supportsMailboxQuery()
      Tests if a MailboxQuery is available.
      Returns:
      true if a mailbox query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getMailboxQuery

      MailboxQuery getMailboxQuery()
      Gets the query for a mailbox. Multiple retrievals produce a nested OR term.
      Returns:
      the mailbox query
      Throws:
      UnimplementedException - supportsMailboxQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsMailboxQuery()} is {@code true} .
    • clearMailboxTerms

      void clearMailboxTerms()
      Clears the mailbox terms.
      Compliance:
      mandatory - This method must be implemented.
    • getReceiptQueryRecord

      ReceiptQueryRecord getReceiptQueryRecord(Type receiptRecordType) throws OperationFailedException
      Gets the receipt query record corresponding to the given Receipt record Type .Multiple retrievals produce a nested OR term.
      Parameters:
      receiptRecordType - a receipt record type
      Returns:
      the recript query record
      Throws:
      NullArgumentException - receiptRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(receiptRecordType) is false
      Compliance:
      mandatory - This method must be implemented.