Interface CatalogueQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidCatalogQuery, OsidExtensibleQuery, OsidFederateableQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidQuery, OsidSourceableQuery, Suppliable

public interface CatalogueQuery extends OsidCatalogQuery

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

  • Method Details

    • matchCanonicalUnitId

      void matchCanonicalUnitId(Id canonicalUnitId, boolean match)
      Sets the canonical unit Id for this query to match canonical units assigned to catalogues.
      Parameters:
      canonicalUnitId - a canonical unit Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - canonicalUnitId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCanonicalUnitIdTerms

      void clearCanonicalUnitIdTerms()
      Clears all canonical unit Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCanonicalUnitQuery

      boolean supportsCanonicalUnitQuery()
      Tests if a canonical unit query is available.
      Returns:
      true if a canonical unit query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCanonicalUnitQuery

      CanonicalUnitQuery getCanonicalUnitQuery()
      Gets the query for a catalogue.
      Returns:
      the canonical unit query
      Throws:
      UnimplementedException - supportsCanonicalUnitQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCanonicalUnitQuery()} is {@code true} .
    • matchAnyCanonicalUnit

      void matchAnyCanonicalUnit(boolean match)
      Matches catalogues with any canonical unit.
      Parameters:
      match - true to match catalogues with any canonical unit, false to match catalogues with no canonical units
      Compliance:
      mandatory - This method must be implemented.
    • clearCanonicalUnitTerms

      void clearCanonicalUnitTerms()
      Clears all canonical unit terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchOfferingId

      void matchOfferingId(Id offeringId, boolean match)
      Sets the offering Id for this query to match offerings assigned to catalogues.
      Parameters:
      offeringId - an offering Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - offeringId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearOfferingIdTerms

      void clearOfferingIdTerms()
      Clears all offering Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsOfferingQuery

      boolean supportsOfferingQuery()
      Tests if an offering query is available.
      Returns:
      true if an offering query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getOfferingQuery

      OfferingQuery getOfferingQuery()
      Gets the query for an offering.
      Returns:
      the offering query
      Throws:
      UnimplementedException - supportsOfferingQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsOfferingQuery()} is {@code true} .
    • matchAnyOffering

      void matchAnyOffering(boolean match)
      Matches catalogues with any offering.
      Parameters:
      match - true to match catalogues with any offering, false to match catalogues with no offerings
      Compliance:
      mandatory - This method must be implemented.
    • clearOfferingTerms

      void clearOfferingTerms()
      Clears all offering terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchParticipantId

      void matchParticipantId(Id participantId, boolean match)
      Sets the participant Id for this query to match participants assigned to catalogues.
      Parameters:
      participantId - a participant Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - participantId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearParticipantIdTerms

      void clearParticipantIdTerms()
      Clears all participant Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsParticipantQuery

      boolean supportsParticipantQuery()
      Tests if a participant query is available.
      Returns:
      true if a participant query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getParticipantQuery

      ParticipantQuery getParticipantQuery()
      Gets the query for a participant.
      Returns:
      the participant query
      Throws:
      UnimplementedException - supportsParticipantQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsParticipantQuery()} is {@code true} .
    • matchAnyParticipant

      void matchAnyParticipant(boolean match)
      Matches catalogues with any participant.
      Parameters:
      match - true to match catalogues with any participant, false to match catalogues with no participants
      Compliance:
      mandatory - This method must be implemented.
    • clearParticipantTerms

      void clearParticipantTerms()
      Clears all participant terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchResultId

      void matchResultId(Id resultId, boolean match)
      Sets the result Id for this query to match results.
      Parameters:
      resultId - a result Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - resultId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearResultIdTerms

      void clearResultIdTerms()
      Clears all result Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsResultQuery

      boolean supportsResultQuery()
      Tests if a result query is available.
      Returns:
      true if a result query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getResultQuery

      ResultQuery getResultQuery()
      Gets the query for a result.
      Returns:
      the result query
      Throws:
      UnimplementedException - supportsResultQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsResultQuery()} is {@code true} .
    • matchAnyResult

      void matchAnyResult(boolean match)
      Matches catalogues with any result.
      Parameters:
      match - true to match catalogues with any result, false to match catalogues with no results
      Compliance:
      mandatory - This method must be implemented.
    • clearResultTerms

      void clearResultTerms()
      Clears all result terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorCatalogueId

      void matchAncestorCatalogueId(Id catalogueId, boolean match)
      Sets the catalogue Id for this query to match catalogues that have the specified catalogue as an ancestor.
      Parameters:
      catalogueId - a catalogue Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - catalogueId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorCatalogueIdTerms

      void clearAncestorCatalogueIdTerms()
      Clears all ancestor catalogue Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorCatalogueQuery

      boolean supportsAncestorCatalogueQuery()
      Tests if a CatalogueQuery is available.
      Returns:
      true if a catalogue query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorCatalogueQuery

      CatalogueQuery getAncestorCatalogueQuery()
      Gets the query for a catalogue. Multiple retrievals produce a nested OR term.
      Returns:
      the catalogue query
      Throws:
      UnimplementedException - supportsAncestorCatalogueQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorCatalogueQuery()} is {@code true} .
    • matchAnyAncestorCatalogue

      void matchAnyAncestorCatalogue(boolean match)
      Matches catalogues with any ancestor.
      Parameters:
      match - true to match catalogues with any ancestor, false to match root catalogues
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorCatalogueTerms

      void clearAncestorCatalogueTerms()
      Clears all ancestor catalogue terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantCatalogueId

      void matchDescendantCatalogueId(Id catalogueId, boolean match)
      Sets the catalogue Id for this query to match catalogues that have the specified catalogue as a descendant.
      Parameters:
      catalogueId - a catalogue Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - catalogueId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantCatalogueIdTerms

      void clearDescendantCatalogueIdTerms()
      Clears all descendant catalogue Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantCatalogueQuery

      boolean supportsDescendantCatalogueQuery()
      Tests if a CatalogueQuery is available.
      Returns:
      true if a catalogue query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantCatalogueQuery

      CatalogueQuery getDescendantCatalogueQuery()
      Gets the query for a catalogue. Multiple retrievals produce a nested OR term.
      Returns:
      the catalogue query
      Throws:
      UnimplementedException - supportsDescendantCatalogueQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantCatalogueQuery()} is {@code true} .
    • matchAnyDescendantCatalogue

      void matchAnyDescendantCatalogue(boolean match)
      Matches catalogues with any descendant.
      Parameters:
      match - true to match catalogues with any descendant, false to match leaf catalogues
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantCatalogueTerms

      void clearDescendantCatalogueTerms()
      Clears all descendant catalogue terms.
      Compliance:
      mandatory - This method must be implemented.
    • getCatalogueQueryRecord

      CatalogueQueryRecord getCatalogueQueryRecord(Type catalogueRecordType) throws OperationFailedException
      Gets the record query corresponding to the given Catalogue record Type . Multiple record retrievals produce a nested boolean OR term.
      Parameters:
      catalogueRecordType - a catalogue record type
      Returns:
      the catalogue query record
      Throws:
      NullArgumentException - catalogueRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(catalogueRecordType) is false
      Compliance:
      mandatory - This method must be implemented.