Interface InquirySmartInquestSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface InquirySmartInquestSession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. Sn InquiryQuery can be retrieved from this session and inquestped to this Inquest to create a virtual collection of Inquiries . The inquiries may be sequenced using the InquirySearchOrder from this session.

This Inquest has a default query that matches any inquiry and a default search order that specifies no sequencing. The queries may be examined using an InquiryQueryInspector . The query may be modified by converting the inspector back to an InquiryQuery .

  • Method Details

    • getInquestId

      Id getInquestId()
      Gets the Inquest Id associated with this session.
      Returns:
      the Inquest Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getInquest

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

      boolean canManageSmartInquests()
      Tests if this user can manage smart inquests. 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 inquest management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryQuery

      InquiryQuery getInquiryQuery()
      Gets an inquiry query.
      Returns:
      the inquiry query
      Compliance:
      mandatory - This method must be implemented.
    • getInquirySearchOrder

      InquirySearchOrder getInquirySearchOrder()
      Gets an inquiry search order.
      Returns:
      the inquiry search order
      Compliance:
      mandatory - This method must be implemented.
    • applyInquiryQuery

      void applyInquiryQuery(InquiryQuery inquiryQuery) throws OperationFailedException, PermissionDeniedException
      Applies an inquiry query to this inquest.
      Parameters:
      inquiryQuery - the inquiry query
      Throws:
      NullArgumentException - inquiryQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - inquiryQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspectInquiryQuery

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

      void applyInquirySequencing(InquirySearchOrder inquirySearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an inquiry search order to this inquest.
      Parameters:
      inquirySearchOrder - the inquiry search order
      Throws:
      NullArgumentException - inquirySearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - inquirySearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getInquiryQueryFromInspector

      InquiryQuery getInquiryQueryFromInspector(InquiryQueryInspector inquiryQueryInspector)
      Gets an inquiry query from an inspector.
      Parameters:
      inquiryQueryInspector - an inquiry query inspector
      Returns:
      the inquiry query
      Throws:
      NullArgumentException - inquiryQueryInspector is null
      UnsupportedException - inquiryQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.