Interface PaymentQuery

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

public interface PaymentQuery extends OsidObjectQuery

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

  • Method Details

    • matchPayerId

      void matchPayerId(Id payerId, boolean match)
      Sets the payer Id for this query.
      Parameters:
      payerId - a payer Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - payerId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPayerIdTerms

      void clearPayerIdTerms()
      Clears the payer Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsPayerQuery

      boolean supportsPayerQuery()
      Tests if a PayerQuery is available.
      Returns:
      true if a payer query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getPayerQuery

      PayerQuery getPayerQuery()
      Gets the query for a payer. Multiple retrievals produce a nested OR term.
      Returns:
      the payer query
      Throws:
      UnimplementedException - supportsPayerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsPayerQuery()} is {@code true} .
    • clearPayerTerms

      void clearPayerTerms()
      Clears the payer terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchCustomerId

      void matchCustomerId(Id customerId, boolean match)
      Sets the customer Id for this query.
      Parameters:
      customerId - a customer Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - customerId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCustomerIdTerms

      void clearCustomerIdTerms()
      Clears the customer Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCustomerQuery

      boolean supportsCustomerQuery()
      Tests if a CustomereQuery is available.
      Returns:
      true if a customer query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCustomerQuery

      CustomerQuery getCustomerQuery()
      Gets the query for a customer. Multiple retrievals produce a nested OR term.
      Returns:
      a customer query
      Throws:
      UnimplementedException - supportsCustomerQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCustomerQuery()} is {@code true} .
    • clearCustomerTerms

      void clearCustomerTerms()
      Clears the customer terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchPeriodId

      void matchPeriodId(Id periodId, boolean match)
      Sets the biliing period Id for this query.
      Parameters:
      periodId - a period Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - periodId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPeriodIdTerms

      void clearPeriodIdTerms()
      Clears the billing period Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsPeriodQuery

      boolean supportsPeriodQuery()
      Tests if a PeriodQuery is available.
      Returns:
      true if a period query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getPeriodQuery

      PeriodQuery getPeriodQuery()
      Gets the query for a billing period. Multiple retrievals produce a nested OR term.
      Returns:
      the period query
      Throws:
      UnimplementedException - supportsPeriodQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsPeriodQuery()} is {@code true} .
    • matchAnyPeriod

      void matchAnyPeriod(boolean match)
      Matches payments with any billing period.
      Parameters:
      match - true to match payments with any period, false to match peyments with no period
      Compliance:
      mandatory - This method must be implemented.
    • clearPeriodTerms

      void clearPeriodTerms()
      Clears the billing period terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchPaymentDate

      void matchPaymentDate(DateTime from, DateTime to, boolean match)
      Matches payment dates between the given date range inclusive.
      Parameters:
      from - start of date range
      to - end of date range
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - from is greater than to
      NullArgumentException - from or to is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPaymentDateTerms

      void clearPaymentDateTerms()
      Clears the payment date terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchProcessDate

      void matchProcessDate(DateTime from, DateTime to, boolean match)
      Matches process dates between the given date range inclusive.
      Parameters:
      from - start of date range
      to - end of date range
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - from is greater than to
      NullArgumentException - from or to is null
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyProcessDate

      void matchAnyProcessDate(boolean match)
      Matches payments with any process date.
      Parameters:
      match - true to match payments with any process date, false to match peyments with no process date
      Compliance:
      mandatory - This method must be implemented.
    • clearProcessDateTerms

      void clearProcessDateTerms()
      Clears the process date terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAmount

      void matchAmount(Currency from, Currency to, boolean match)
      Matches amounts between the given range inclusive.
      Parameters:
      from - start of range
      to - end of range
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - from is greater than to
      NullArgumentException - from or to is null
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyAmount

      void matchAnyAmount(boolean match)
      Matches payments with any amount.
      Parameters:
      match - true to match payments with any amount, false to match peyments with no amount
      Compliance:
      mandatory - This method must be implemented.
    • clearAmountTerms

      void clearAmountTerms()
      Clears the amount.
      Compliance:
      mandatory - This method must be implemented.
    • matchBusinessId

      void matchBusinessId(Id businessId, boolean match)
      Sets the business Id for this query to match payments assigned to businesses.
      Parameters:
      businessId - the business Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - businessId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearBusinessIdTerms

      void clearBusinessIdTerms()
      Clears the business Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsBusinessQuery

      boolean supportsBusinessQuery()
      Tests if a BusinessQuery is available.
      Returns:
      true if a business query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getBusinessQuery

      BusinessQuery getBusinessQuery()
      Gets the query for a business. Multiple retrievals produce a nested OR term.
      Returns:
      the business query
      Throws:
      UnimplementedException - supportsBusinessQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsBusinessQuery()} is {@code true} .
    • clearBusinessTerms

      void clearBusinessTerms()
      Clears the business terms.
      Compliance:
      mandatory - This method must be implemented.
    • getPaymentQueryRecord

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