Interface EventSmartCalendarSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface EventSmartCalendarSession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. An EventQuery can be retrieved from this session and mapped to this Calendar to create a virtual collection of Events . The entries may be sequenced using the EventSearchOrder from this session.

This Calendar has a default query that matches any event and a default search order that specifies no sequencing. The queries may be examined using an EventQueryInspector . The query may be modified by converting the inspector back to an EventQuery .

  • 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.
    • canManageSmartCalendars

      boolean canManageSmartCalendars()
      Tests if this user can manage smart calendars. 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 smart operations.
      Returns:
      false if smart calendar methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEventQuery

      EventQuery getEventQuery()
      Gets an event query.
      Returns:
      the event query
      Compliance:
      mandatory - This method must be implemented.
    • getEventSearchOrder

      EventSearchOrder getEventSearchOrder()
      Gets an event search order.
      Returns:
      the event search order
      Compliance:
      mandatory - This method must be implemented.
    • applyEventQuery

      void applyEventQuery(EventQuery eventQuery) throws OperationFailedException, PermissionDeniedException
      Applies an event query to this calendar.
      Parameters:
      eventQuery - the event query
      Throws:
      NullArgumentException - eventQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - eventQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspectEventQuery

      Gets an event query inspector for this calendar.
      Returns:
      the event query inspector
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • applyEventSequencing

      void applyEventSequencing(EventSearchOrder eventSearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an event search order to this calendar.
      Parameters:
      eventSearchOrder - the event search order
      Throws:
      NullArgumentException - eventSearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - eventSearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getEventQueryFromInspector

      EventQuery getEventQueryFromInspector(EventQueryInspector eventQueryInspector)
      Gets an event query from an inspector.
      Parameters:
      eventQueryInspector - an event query inspector
      Returns:
      the event query
      Throws:
      NullArgumentException - eventQueryInspector is null
      UnsupportedException - eventQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.