Interface SubscriptionQuery

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

public interface SubscriptionQuery extends OsidRelationshipQuery

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

  • Method Details

    • matchDispatchId

      void matchDispatchId(Id dispatchId, boolean match)
      Sets the dispatch Id for this query to match subscriptions assigned to dispatches.
      Parameters:
      dispatchId - a dispatch Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - dispatchId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDispatchIdTerms

      void clearDispatchIdTerms()
      Clears the dispatch Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDispatchQuery

      boolean supportsDispatchQuery()
      Tests if a DispatchQuery is available.
      Returns:
      true if a dispatch query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDispatchQuery

      DispatchQuery getDispatchQuery()
      Gets the query for a dispatch query. Multiple retrievals produce a nested OR term.
      Returns:
      the dispatch query
      Throws:
      UnimplementedException - supportsDispatchQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDispatchQuery()} is {@code true} .
    • clearDispatchTerms

      void clearDispatchTerms()
      Clears the dispatch terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSubscriberId

      void matchSubscriberId(Id resourceId, boolean match)
      Sets a subscriber Id .
      Parameters:
      resourceId - a resource Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - resourceId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearSubscriberIdTerms

      void clearSubscriberIdTerms()
      Clears the subscriber Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSubscriberQuery

      boolean supportsSubscriberQuery()
      Tests if a ResourceQuery is available.
      Returns:
      true if a resource query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSubscriberQuery

      ResourceQuery getSubscriberQuery()
      Gets the query for a subscriber query. Multiple retrievals produce a nested OR term.
      Returns:
      the resource query
      Throws:
      UnimplementedException - supportsSubscriberQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsSubscriberQuery()} is {@code true} .
    • clearSubscriberTerms

      void clearSubscriberTerms()
      Clears the subscriber terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAddressId

      void matchAddressId(Id addressId, boolean match)
      Sets an address Id .
      Parameters:
      addressId - an address Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - addressId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAddressIdTerms

      void clearAddressIdTerms()
      Clears the address Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAddressQuery

      boolean supportsAddressQuery()
      Tests if an AddressQuery is available.
      Returns:
      true if an address query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAddressQuery

      AddressQuery getAddressQuery()
      Gets the query for an address query. Multiple retrievals produce a nested OR term.
      Returns:
      the address query
      Throws:
      UnimplementedException - supportsAddressQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAddressrQuery()} is {@code true} .
    • matchAnyAddress

      void matchAnyAddress(boolean match)
      Matches any address.
      Parameters:
      match - true for a positive match, false for a negative match
      Compliance:
      mandatory - This method must be implemented.
    • clearAddressTerms

      void clearAddressTerms()
      Clears the address terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchPublisherId

      void matchPublisherId(Id publisherId, boolean match)
      Sets the dispatch Id for this query to match subscriptions assigned to publishers.
      Parameters:
      publisherId - a publisher Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - publisherId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearPublisherIdTerms

      void clearPublisherIdTerms()
      Clears the publisher Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsPublisherQuery

      boolean supportsPublisherQuery()
      Tests if a PublisherQuery is available.
      Returns:
      true if a publisher query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getPublisherQuery

      PublisherQuery getPublisherQuery()
      Gets the query for a publisher query. Multiple retrievals produce a nested OR term.
      Returns:
      the publisher query
      Throws:
      UnimplementedException - supportsPublisherQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsPublisherQuery()} is {@code true} .
    • clearPublisherTerms

      void clearPublisherTerms()
      Clears the publisher terms.
      Compliance:
      mandatory - This method must be implemented.
    • getSubscriptionQueryRecord

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