Interface CourseCatalogQuery

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

public interface CourseCatalogQuery extends OsidCatalogQuery

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

  • Method Details

    • matchCourseId

      void matchCourseId(Id courseId, boolean match)
      Sets the course Id for this query to match courses that have a related course.
      Parameters:
      courseId - a course Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - courseId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCourseIdTerms

      void clearCourseIdTerms()
      Clears the course Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCourseQuery

      boolean supportsCourseQuery()
      Tests if a CourseQuery is available.
      Returns:
      true if a course query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCourseQuery

      CourseQuery getCourseQuery()
      Gets the query for a course. Multiple retrievals produce a nested OR term.
      Returns:
      the course query
      Throws:
      UnimplementedException - supportsCourseQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCourseQuery()} is {@code true} .
    • matchAnyCourse

      void matchAnyCourse(boolean match)
      Matches course catalogs that have any course.
      Parameters:
      match - true to match courses with any course, false to match courses with no course
      Compliance:
      mandatory - This method must be implemented.
    • clearCourseTerms

      void clearCourseTerms()
      Clears the course query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchActivityUnitId

      void matchActivityUnitId(Id activityUnitId, boolean match)
      Sets the activity unit Id for this query.
      Parameters:
      activityUnitId - an activity unit Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - activityUnitId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityUnitIdTerms

      void clearActivityUnitIdTerms()
      Clears the activity unit Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsActivityUnitQuery

      boolean supportsActivityUnitQuery()
      Tests if an ActivityUnitQuery is available.
      Returns:
      true if an activity unit query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getActivityUnitQuery

      ActivityUnitQuery getActivityUnitQuery()
      Gets the query for an activity unit. Multiple retrievals produce a nested OR term.
      Returns:
      the activity unit query
      Throws:
      UnimplementedException - supportsActivityUnitQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsActivityUnitQuery()} is {@code true} .
    • matchAnyActivityUnit

      void matchAnyActivityUnit(boolean match)
      Matches course catalogs that have any activity unit.
      Parameters:
      match - true to match course catalogs with any activity unit, false to match course catalogs with no activity units
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityUnitTerms

      void clearActivityUnitTerms()
      Clears the activity unit query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchCourseOfferingId

      void matchCourseOfferingId(Id courseOfferingId, boolean match)
      Sets the catalog Id for this query.
      Parameters:
      courseOfferingId - a course offering Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - courseOfferingId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearCourseOfferingIdTerms

      void clearCourseOfferingIdTerms()
      Clears the course offering Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCourseOfferingQuery

      boolean supportsCourseOfferingQuery()
      Tests if a CourseOfferingQuery is available.
      Returns:
      true if a course offering query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCourseOfferingQuery

      CourseOfferingQuery getCourseOfferingQuery()
      Gets the query for a course offering. Multiple retrievals produce a nested OR term.
      Returns:
      the course offering query
      Throws:
      UnimplementedException - supportsCourseOfferingQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCourseOfferingQuery()} is {@code true} .
    • matchAnyCourseOffering

      void matchAnyCourseOffering(boolean match)
      Matches course catalogs that have any course offering.
      Parameters:
      match - true to match courses with any course offering, false to match courses with no course offering
      Compliance:
      mandatory - This method must be implemented.
    • clearCourseOfferingTerms

      void clearCourseOfferingTerms()
      Clears the course offering query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchActivityId

      void matchActivityId(Id activityUnitId, boolean match)
      Sets the activity Id for this query.
      Parameters:
      activityUnitId - an activity Id
      match - true if a positive match, false for a negative match
      Throws:
      NullArgumentException - activityId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityIdTerms

      void clearActivityIdTerms()
      Clears the activity Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsActivityQuery

      boolean supportsActivityQuery()
      Tests if an ActivityQuery is available.
      Returns:
      true if an activity query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getActivityQuery

      ActivityQuery getActivityQuery()
      Gets the query for an activity. Multiple retrievals produce a nested OR term.
      Returns:
      the activity query
      Throws:
      UnimplementedException - supportsActivityQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsActivityQuery()} is {@code true} .
    • matchAnyActivity

      void matchAnyActivity(boolean match)
      Matches course catalogs that have any activity.
      Parameters:
      match - true to match course catalogs with any activity, false to match course catalogs with no activities
      Compliance:
      mandatory - This method must be implemented.
    • clearActivityTerms

      void clearActivityTerms()
      Clears the activity query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchTermId

      void matchTermId(Id termId, boolean match)
      Sets the term Id for this query to match catalogs containing terms.
      Parameters:
      termId - the term Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - termId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearTermIdTerms

      void clearTermIdTerms()
      Clears the term Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsTermQuery

      boolean supportsTermQuery()
      Tests if a TermQuery is available.
      Returns:
      true if a term query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTermQuery

      TermQuery getTermQuery()
      Gets the query for a term Multiple retrievals produce a nested OR term.
      Returns:
      the term query
      Throws:
      UnimplementedException - supportsTermQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsTermQuery()} is {@code true} .
    • matchAnyTerm

      void matchAnyTerm(boolean match)
      Matches course catalogs that have any term.
      Parameters:
      match - true to match course catalogs with any term, false to match courses with no term
      Compliance:
      mandatory - This method must be implemented.
    • clearTermTerms

      void clearTermTerms()
      Clears the term query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchAncestorCourseCatalogId

      void matchAncestorCourseCatalogId(Id courseCatalogId, boolean match)
      Sets the course catalog Id for this query to match course catalogs that have the specified course catalog as an ancestor.
      Parameters:
      courseCatalogId - a course catalog Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - courseCatalogId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorCourseCatalogIdTerms

      void clearAncestorCourseCatalogIdTerms()
      Clears the ancestor course catalog Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsAncestorCourseCatalogQuery

      boolean supportsAncestorCourseCatalogQuery()
      Tests if a CourseCatalogQuery is available.
      Returns:
      true if a course catalog query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAncestorCourseCatalogQuery

      CourseCatalogQuery getAncestorCourseCatalogQuery()
      Gets the query for a course catalog. Multiple retrievals produce a nested OR term.
      Returns:
      the course catalog query
      Throws:
      UnimplementedException - supportsAncestorCourseCatalogQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsAncestorCourseCatalogQuery()} is {@code true} .
    • matchAnyAncestorCourseCatalog

      void matchAnyAncestorCourseCatalog(boolean match)
      Matches course catalogs with any course catalog ancestor.
      Parameters:
      match - true to match course catalogs with any ancestor, false to match root course catalogs
      Compliance:
      mandatory - This method must be implemented.
    • clearAncestorCourseCatalogTerms

      void clearAncestorCourseCatalogTerms()
      Clears the ancestor course catalog query terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchDescendantCourseCatalogId

      void matchDescendantCourseCatalogId(Id courseCatalogId, boolean match)
      Sets the course catalog Id for this query to match course catalogs that have the specified course catalog as a descendant.
      Parameters:
      courseCatalogId - a course catalog Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - courseCatalogId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantCourseCatalogIdTerms

      void clearDescendantCourseCatalogIdTerms()
      Clears the descendant course catalog Id query terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsDescendantCourseCatalogQuery

      boolean supportsDescendantCourseCatalogQuery()
      Tests if a CourseCatalogQuery is available.
      Returns:
      true if a course catalog query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getDescendantCourseCatalogQuery

      CourseCatalogQuery getDescendantCourseCatalogQuery()
      Gets the query for a course catalog. Multiple retrievals produce a nested OR term.
      Returns:
      the course catalog query
      Throws:
      UnimplementedException - supportsDescendantCourseCatalogQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsDescendantCourseCatalogQuery()} is {@code true} .
    • matchAnyDescendantCourseCatalog

      void matchAnyDescendantCourseCatalog(boolean match)
      Matches course catalogs with any descendant course catalog.
      Parameters:
      match - true to match course catalogs with any descendant, false to match leaf course catalogs
      Compliance:
      mandatory - This method must be implemented.
    • clearDescendantCourseCatalogTerms

      void clearDescendantCourseCatalogTerms()
      Clears the descendant course catalog query terms.
      Compliance:
      mandatory - This method must be implemented.
    • getCourseCatalogQueryRecord

      CourseCatalogQueryRecord getCourseCatalogQueryRecord(Type courseCatalogRecordType) throws OperationFailedException
      Gets the course catalog query record corresponding to the given CourseCatalog record Type . Multiple record retrievals produce a nested OR term.
      Parameters:
      courseCatalogRecordType - a course catalog record type
      Returns:
      the course catalog query record
      Throws:
      NullArgumentException - courseCatalogRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(courseCatalogRecordType) is false
      Compliance:
      mandatory - This method must be implemented.