Interface CyclicTimePeriodQuery

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

public interface CyclicTimePeriodQuery extends OsidObjectQuery

This is the query for searching cyclic time periods. Each method match request produces an AND term while multiple invocations of a method produces a nested OR .

  • Method Details

    • matchTimePeriodId

      void matchTimePeriodId(Id timePeriodId, boolean match)
      Sets the time period Id for this query to match cyclic time periods with the given mapped time period.
      Parameters:
      timePeriodId - a tiem period Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - timePeriodId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearTimePeriodIdTerms

      void clearTimePeriodIdTerms()
      Clears the cyclic time period Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsTimePeriodQuery

      boolean supportsTimePeriodQuery()
      Tests if a TimePeriodQuery is available for querying time periods.
      Returns:
      true if a time period query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTimePeriodQuery

      TimePeriodQuery getTimePeriodQuery()
      Gets the query for a time period. Multiple retrievals produce a nested OR term.
      Returns:
      the time period query
      Throws:
      UnimplementedException - supportsTimePeriodQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsTimePeriodQuery()} is {@code true} .
    • matchAnyTimePeriod

      void matchAnyTimePeriod(boolean match)
      Matches a cyclic time period that has any time period assigned.
      Parameters:
      match - true to match cyclic time periods with any tiem period, false to match cyclic time periods with no tiem periods
      Compliance:
      mandatory - This method must be implemented.
    • clearTimePeriodTerms

      void clearTimePeriodTerms()
      Clears the time period terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchCalendarId

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

      void clearCalendarIdTerms()
      Clears the calendar Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsCalendarQuery

      boolean supportsCalendarQuery()
      Tests if a CalendarQuery is available for querying resources.
      Returns:
      true if a calendar query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCalendarQuery

      CalendarQuery getCalendarQuery()
      Gets the query for a calendar. Multiple retrievals produce a nested OR term.
      Returns:
      the calendar query
      Throws:
      UnimplementedException - supportsCalendarQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsCalendarQuery()} is {@code true} .
    • clearCalendarTerms

      void clearCalendarTerms()
      Clears the calendar terms.
      Compliance:
      mandatory - This method must be implemented.
    • getCyclicTimePeriodQueryRecord

      CyclicTimePeriodQueryRecord getCyclicTimePeriodQueryRecord(Type cyclicTimePeriodRecordType) throws OperationFailedException
      Gets the cyclic time period query record corresponding to the given CyclicTimePeriod record Type . Multiple retrievals produce a nested OR term.
      Parameters:
      cyclicTimePeriodRecordType - a cyclic time period query record type
      Returns:
      the cyclic time period query record
      Throws:
      NullArgumentException - cyclicTimePeriodRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(cyclicTimePeriodRecordType) is false
      Compliance:
      mandatory - This method must be implemented.