Interface AgendaSmartEngineSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AgendaSmartEngineSession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. An AgendaQuery can be retrieved from this session and mapped to this Engine to create a virtual collection of Agendas . The agendas may be sequenced using the AgendaSearchOrder from this session.

This Engine has a default query that matches any agenda and a default search order that specifies no sequencing. The queries may be examined using an AgendaQueryInspector . The query may be modified by converting the inspector back to an AgendaQuery .

  • Method Details

    • getEngineId

      Id getEngineId()
      Gets the Engine Id associated with this session.
      Returns:
      the Engine Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getEngine

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

      boolean canManageSmartEngines()
      Tests if this user can manage smart engines. A return of true does not guarantee successful authorization. A return of false indicates that it is known 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 operations to unauthorized users.
      Returns:
      false if smart engine management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAgendaQuery

      AgendaQuery getAgendaQuery()
      Gets an agenda query.
      Returns:
      the agenda query
      Compliance:
      mandatory - This method must be implemented.
    • getAgendaSearchOrder

      AgendaSearchOrder getAgendaSearchOrder()
      Gets an agenda search order.
      Returns:
      the agenda search order
      Compliance:
      mandatory - This method must be implemented.
    • applyAgendaQuery

      void applyAgendaQuery(AgendaQuery agendaQuery) throws OperationFailedException, PermissionDeniedException
      Applies an agenda query to this engine.
      Parameters:
      agendaQuery - the agenda query
      Throws:
      NullArgumentException - agendaQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - agendaQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspectAgendaQuery

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

      void applyAgendaSequencing(AgendaSearchOrder agendaSearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an agenda search order to this engine.
      Parameters:
      agendaSearchOrder - the agenda search order
      Throws:
      NullArgumentException - agendaSearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - agendaSearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getAgendaQueryFromInspector

      AgendaQuery getAgendaQueryFromInspector(AgendaQueryInspector agendaQueryInspector)
      Gets an agenda query from an inspector.
      Parameters:
      agendaQueryInspector - an agenda query inspector
      Returns:
      the agenda query
      Throws:
      NullArgumentException - agendaQueryInspector is null
      UnsupportedException - agendaQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.