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.