Interface ObjectiveQuerySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
All Known Subinterfaces:
ObjectiveSearchSession

public interface ObjectiveQuerySession extends OsidSession

This session provides methods for searching Objectives . The search query is constructed using the ObjectiveQuery . The objective record Type also specifies the record for the objective query.

This session defines views that offer differing behaviors for searching.

  • federated objective bank view: searches include objectives in objective banks of which this objective bank is an ancestor in the objective bank hierarchy
  • isolated objective bank view: searches are restricted to objectives in this objective bank

Objectives may have a query record indicated by their respective record types. The query record is accessed via the 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.
    • canSearchObjectives

      boolean canSearchObjectives()
      Tests if this user can perform Objectives searches. 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 search operations to unauthorized users.
      Returns:
      false if search methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedObjectiveBankView

      void useFederatedObjectiveBankView()
      Federates the view for methods in this session. A federated view will include objectives in objective banks which are children of this objective bank in the objective bank hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedObjectiveBankView

      void useIsolatedObjectiveBankView()
      Isolates the view for methods in this session. An isolated view restricts searches to this objective bank only.
      Compliance:
      mandatory - This method is must be implemented.
    • getObjectiveQuery

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

      Gets a list of Objectives matching the given objective query.
      Parameters:
      objectiveQuery - the objective query
      Returns:
      the returned ObjectiveList
      Throws:
      NullArgumentException - objectiveQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - objectiveQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.