Interface ObjectiveSmartObjectiveBankSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface ObjectiveSmartObjectiveBankSession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. An ObjectiveQuery can be retrieved from this session and mapped to this ObjectiveBank to create a virtual collection of Objectives . The objectives may be sequenced using the ObjectiveSearchOrder from this session.

This ObjectiveBank has a default query that matches any objective and a default search order that specifies no sequencing. The queries may be examined using an ObjectiveQueryInspector . The query may be modified by converting the inspector back to an ObjectiveQuery .

  • Method Details

    • getObjectiveBankId

      Id getObjectiveBankId()
      Gets the ObjectiveBank Id associated with this session.
      Returns:
      the ObjectiveBank Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveBank

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

      boolean canManageSmartObjectiveBanks()
      Tests if this user can manage smart objective banks. A return of true does not guarantee successful assessment. 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 objective bank management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveQuery

      ObjectiveQuery getObjectiveQuery()
      Gets an objective query.
      Returns:
      the objective query
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveSearchOrder

      ObjectiveSearchOrder getObjectiveSearchOrder()
      Gets an objective search order.
      Returns:
      the objective search order
      Compliance:
      mandatory - This method must be implemented.
    • applyObjectiveQuery

      void applyObjectiveQuery(ObjectiveQuery objectiveQuery) throws OperationFailedException, PermissionDeniedException
      Applies an objective query to this bank.
      Parameters:
      objectiveQuery - the objective query
      Throws:
      NullArgumentException - objectiveQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - objectiveQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspectObjectiveQuery

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

      void applyObjectiveSequencing(ObjectiveSearchOrder objectiveSearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an objective search order to this objective bank.
      Parameters:
      objectiveSearchOrder - the objective search order
      Throws:
      NullArgumentException - objectiveSearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - objectiveSearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getObjectiveQueryFromInspector

      ObjectiveQuery getObjectiveQueryFromInspector(ObjectiveQueryInspector objectiveQueryInspector)
      Gets an objective query from an inspector.
      Parameters:
      objectiveQueryInspector - a query inspector
      Returns:
      the objective query
      Throws:
      NullArgumentException - objectiveQueryInspector is null
      UnsupportedException - objectiveQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.