Interface InstructionQuerySession

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

public interface InstructionQuerySession extends OsidSession

This session provides methods for searching among Instruction objects. The search query is constructed using the InstructionQuery .

This session defines views that offer differing behaviors for searching.

  • federated engine view: searches include instructions in engines of which this engine is an ancestor in the engine hierarchy
  • isolated engine view: searches are restricted to instructions in this engine

Instructions may have a query record indicated by their respective record types. The query record is accessed via the InstructionQuery .

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

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

      void useFederatedEngineView()
      Federates the view for methods in this session. A federated view will include instructions in engines which are children of this engine in the engine hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedEngineView

      void useIsolatedEngineView()
      Isolates the view for methods in this session. An isolated view restricts lookups to this engine only.
      Compliance:
      mandatory - This method is must be implemented.
    • getInstructionQuery

      InstructionQuery getInstructionQuery()
      Gets an instruction query.
      Returns:
      the instruction query
      Compliance:
      mandatory - This method must be implemented.
    • getInstructionsByQuery

      InstructionList getInstructionsByQuery(InstructionQuery instructionQuery) throws OperationFailedException, PermissionDeniedException
      Gets a list of Instructions matching the given instruction query.
      Parameters:
      instructionQuery - the instruction query
      Returns:
      the returned InstructionList
      Throws:
      NullArgumentException - instructionQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - instructionQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.