Interface RecurringEventLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface RecurringEventLookupSession extends OsidSession

This session provides methods for retrieving RecurringEvent s.

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition
  • isolated calendar view: All recurring event methods in this session operate, retrieve and pertain to events defined explicitly in the current calendar. Using an isolated view is useful for managing recurring events with the RecurringEventAdminSession .
  • federated calendar view: All recurring event methods in this session operate, retrieve and pertain to all recurring events defined in this calendar and any other calendars implicitly available in this calendar through calendar inheritence.
  • active recurring event view: All recurring event lookup methods return active recurring events.
  • any status recurring event view: Recurring events of any active or inactive status are returned from methods.
  • sequestered recurring event viiew: All event methods suppress sequestered recurring events.
  • unsequestered recurring event view: All event methods return all recurring events.

Events may have an additional records indicated by their respective record types. The record may not be accessed through a cast of the Event .

  • Method Details

    • getCalendarId

      Id getCalendarId()
      Gets the Calendar Id associated with this session.
      Returns:
      the Calendar Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCalendar

      Gets the Calendar associated with this session.
      Returns:
      the Calendar associated with this session
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canLookupRecurringEvents

      boolean canLookupRecurringEvents()
      Tests if this user can perform RecurringEvent lookups. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.
      Returns:
      false if lookup methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeRecurringEventView

      void useComparativeRecurringEventView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryRecurringEventView

      void usePlenaryRecurringEventView()
      A complete view of the Event returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedCalendarView

      void useFederatedCalendarView()
      Federates the view for methods in this session. A federated view will include recurring events in calendars which are children of this calendar in the calendar hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedCalendarView

      void useIsolatedCalendarView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this calendar only.
      Compliance:
      mandatory - This method is must be implemented.
    • useActiveRecurringEventView

      void useActiveRecurringEventView()
      Only active recurring events are returned by methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • useAnyStatusRecurringEventView

      void useAnyStatusRecurringEventView()
      All active and inactive recurring events are returned by methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • useSequesteredRecurringEventView

      void useSequesteredRecurringEventView()
      The returns from the lookup methods omit sequestered recurring events.
      Compliance:
      mandatory - This method is must be implemented.
    • useUnsequesteredRecurringEventView

      void useUnsequesteredRecurringEventView()
      All recurring events are returned including sequestered recurring events.
      Compliance:
      mandatory - This method is must be implemented.
    • getRecurringEvent

      Gets the RecurringEvent specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned RecurringEvent may have a different Id than requested, such as the case where a duplicate Id was assigned to an Event and retained for compatibility. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      recurringEventId - Id of the RecurringEvent
      Returns:
      the recurring event
      Throws:
      NotFoundException - recurringEventId not found
      NullArgumentException - recurringEventId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method is must be implemented.
    • getRecurringEventsByIds

      Gets a RecurringEventList corresponding to the given IdList . In plenary mode, the returned list contains all of the recurring events specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible RecurringEvents may be omitted from the list and may present the elements in any order including returning a unique set. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      recurringEventIds - the list of Ids to retrieve
      Returns:
      the returned RecurringEvent list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - recurringEventIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRecurringEventsByGenusType

      RecurringEventList getRecurringEventsByGenusType(Type recurringEventGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a RecurringEventList corresponding to the given recurring event genus Type which does not include recurring events of genus types derived from the specified Type . In plenary mode, the returned list contains all known recurring events or an error results. Otherwise, the returned list may contain only those recurring events that are accessible through this session. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      recurringEventGenusType - a recurring event genus type
      Returns:
      the returned RecurringEvent list
      Throws:
      NullArgumentException - recurringEventGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRecurringEventsByParentGenusType

      RecurringEventList getRecurringEventsByParentGenusType(Type recurringEventGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a RecurringEventList corresponding to the given recurring event genus Type and include any additional recurring event with genus types derived from the specified Type . In plenary mode, the returned list contains all known recurring events or an error results. Otherwise, the returned list may contain only those recurring events that are accessible through this session. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      recurringEventGenusType - a recurring event genus type
      Returns:
      the returned RecurringEvent list
      Throws:
      NullArgumentException - recurringEventGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRecurringEventsByRecordType

      RecurringEventList getRecurringEventsByRecordType(Type recurringEventRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a RecurringEventList containing the given recurring event record Type . In plenary mode, the returned list contains all known recurring events or an error results. Otherwise, the returned list may contain only those recurring events that are accessible through this session. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      recurringEventRecordType - a recurring event record type
      Returns:
      the returned RecurringEvent list
      Throws:
      NullArgumentException - recurringEventRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRecurringEventsByScheduleSlot

      RecurringEventList getRecurringEventsByScheduleSlot(Id scheduleSlotId) throws OperationFailedException, PermissionDeniedException
      Gets the RecurringEvents containing the given schedule slot. In plenary mode, the returned list contains all matching recurring events or an error results. Otherwise, the returned list may contain only those recurring events that are accessible through this session. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Parameters:
      scheduleSlotId - a schedule slot Id
      Returns:
      the returned RecurringEvent list
      Throws:
      NullArgumentException - scheduleSlotId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getRecurringEvents

      Gets all RecurringEvents . In plenary mode, the returned list contains all known recurring events or an error results. Otherwise, the returned list may contain only those recurring events that are accessible through this session. In active mode, recurring events are returned that are currently active. In any status mode, active and inactive recurring events are returned.
      Returns:
      a RecurringEventList
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.