Interface RecurringEventQuery

All Superinterfaces:
Extensible, OsidBrowsableQuery, OsidContainableQuery, OsidExtensibleQuery, OsidIdentifiableQuery, OsidObjectQuery, OsidOperableQuery, OsidQuery, OsidRuleQuery, Suppliable

public interface RecurringEventQuery extends OsidRuleQuery, OsidContainableQuery

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

  • Method Details

    • matchScheduleId

      void matchScheduleId(Id scheduleId, boolean match)
      Sets the schedule Id for this query for matching schedules.
      Parameters:
      scheduleId - a schedule Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - scheduleId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearScheduleIdTerms

      void clearScheduleIdTerms()
      Clears the schedule Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsScheduleQuery

      boolean supportsScheduleQuery()
      Tests if a ScheduleQuery is available for querying schedules.
      Returns:
      true if a schedule query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getScheduleQuery

      ScheduleQuery getScheduleQuery()
      Gets the query for a schedule. Multiple retrievals produce a nested OR term.
      Returns:
      the schedule query
      Throws:
      UnimplementedException - supportsScheduleQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsScheduleQuery()} is {@code true} .
    • matchAnySchedule

      void matchAnySchedule(boolean match)
      Matches a recurring event that has any schedule assigned.
      Parameters:
      match - true to match recurring events with any schedules, false to match recurring events with no schedules
      Compliance:
      mandatory - This method must be implemented.
    • clearScheduleTerms

      void clearScheduleTerms()
      Clears the schedule terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSupersedingEventId

      void matchSupersedingEventId(Id supersedingEventId, boolean match)
      Sets the superseding event Id for this query.
      Parameters:
      supersedingEventId - a superseding event Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - supersedingEventId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearSupersedingEventIdTerms

      void clearSupersedingEventIdTerms()
      Clears the superseding event Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSupersedingEventQuery

      boolean supportsSupersedingEventQuery()
      Tests if a SupersedingEventQuery is available for querying superseding events.
      Returns:
      true if a superseding event query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSupersedingEventQuery

      SupersedingEventQuery getSupersedingEventQuery()
      Gets the query for a superseding event. Multiple retrievals produce a nested OR term.
      Returns:
      the superseding event query
      Throws:
      UnimplementedException - supportsSupersedingEventQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsSupersedingEventQuery()} is {@code true} .
    • matchAnySupersedingEvent

      void matchAnySupersedingEvent(boolean match)
      Matches a recurring event that has any superseding event assigned.
      Parameters:
      match - true to match recurring events with any superseding events, false to match events with no superseding events
      Compliance:
      mandatory - This method must be implemented.
    • clearSupersedingEventTerms

      void clearSupersedingEventTerms()
      Clears the superseding event terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSpecificMeetingTime

      void matchSpecificMeetingTime(DateTime start, DateTime end, boolean match)
      Matches recurring events with specific dates between the given range inclusive.
      Parameters:
      start - start date
      end - end date
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - end is less than start
      NullArgumentException - start or end is zero
      Compliance:
      mandatory - This method must be implemented.
    • matchAnySpecificMeetingTime

      void matchAnySpecificMeetingTime(boolean match)
      Matches a recurring event that has any specific date assigned.
      Parameters:
      match - true to match recurring events with any specific date, false to match recurring events with no specific date
      Compliance:
      mandatory - This method must be implemented.
    • clearSpecificMeetingTimeTerms

      void clearSpecificMeetingTimeTerms()
      Clears the blackout terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchEventId

      void matchEventId(Id eventId, boolean match)
      Sets the composed event Id for this query.
      Parameters:
      eventId - an event Id
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - eventId is null
      Compliance:
      mandatory - This method must be implemented.
    • clearEventIdTerms

      void clearEventIdTerms()
      Clears the event Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsEventQuery

      boolean supportsEventQuery()
      Tests if an EventQuery is available for querying composed events.
      Returns:
      true if an event query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEventQuery

      EventQuery getEventQuery()
      Gets the query for an event. Multiple retrievals produce a nested OR term.
      Returns:
      the event query
      Throws:
      UnimplementedException - supportsEventQuery() is false
      Compliance:
      optional - This method must be implemented if {@code supportsEventQuery()} is {@code true} .
    • matchAnyEvent

      void matchAnyEvent(boolean match)
      Matches a recurring event that has any composed event assigned.
      Parameters:
      match - true to match recurring events with any composed events, false to match events with no composed events
      Compliance:
      mandatory - This method must be implemented.
    • clearEventTerms

      void clearEventTerms()
      Clears the event terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchBlackout

      void matchBlackout(DateTime datetime, boolean match)
      Matches a blackout that contains the given date time.
      Parameters:
      datetime - a datetime
      match - true for a positive match, false for a negative match
      Throws:
      NullArgumentException - datetime is null
      Compliance:
      mandatory - This method must be implemented.
    • matchAnyBlackout

      void matchAnyBlackout(boolean match)
      Matches a recurring event that has any blackout assigned.
      Parameters:
      match - true to match recurring events with any blackout, false to match recurring events with no blackout
      Compliance:
      mandatory - This method must be implemented.
    • clearBlackoutTerms

      void clearBlackoutTerms()
      Clears the blackout terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchBlackoutInclusive

      void matchBlackoutInclusive(DateTime start, DateTime end, boolean match)
      Matches recurring events with blackouts between the given range inclusive.
      Parameters:
      start - start date
      end - end date
      match - true for a positive match, false for a negative match
      Throws:
      InvalidArgumentException - end is less than start
      NullArgumentException - start or end is zero
      Compliance:
      mandatory - This method must be implemented.
    • clearBlackoutInclusiveTerms

      void clearBlackoutInclusiveTerms()
      Clears the blackout terms.
      Compliance:
      mandatory - This method must be implemented.
    • matchSponsorId

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

      void clearSponsorIdTerms()
      Clears the sponsor Id terms.
      Compliance:
      mandatory - This method must be implemented.
    • supportsSponsorQuery

      boolean supportsSponsorQuery()
      Tests if a LocationQuery is available for querying sponsors.
      Returns:
      true if a sponsor query is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSponsorQuery

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

      void clearSponsorTerms()
      Clears the sponsor 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 calendars.
      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.
    • getRecurringEventQueryRecord

      RecurringEventQueryRecord getRecurringEventQueryRecord(Type recurringEventRecordType) throws OperationFailedException
      Gets the recurring event query recod corresponding to the given RecurringEvent record Type . Multiple retrievals produce a nested OR term.
      Parameters:
      recurringEventRecordType - a recurring event query record type
      Returns:
      the recurring event query record
      Throws:
      NullArgumentException - recurringEventRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(recurringEventRecordType) is false
      Compliance:
      mandatory - This method must be implemented.