Interface ControllerQuerySession

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

public interface ControllerQuerySession extends OsidSession

This session provides methods for searching among Controllers . The search query is constructed using the ControllerQuery .

This session defines views that offer differing behaviors for searching.

  • federated trigger view: searches include controllers in triggers of which this trigger is an ancestor in the trigger hierarchy
  • isolated trigger view: searches are restricted to controllers in this trigger

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

  • Method Details

    • getSystemId

      Id getSystemId()
      Gets the System Id associated with this session.
      Returns:
      the System Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getSystem

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

      boolean canSearchControllers()
      Tests if this user can perform Controller 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.
    • useFederatedSystemView

      void useFederatedSystemView()
      Federates the view for methods in this session. A federated view will include controllers in systems which are children of this trigger in the system hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedSystemView

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

      ControllerQuery getControllerQuery()
      Gets a controller query.
      Returns:
      the controller query
      Compliance:
      mandatory - This method must be implemented.
    • getControllersByQuery

      ControllerList getControllersByQuery(ControllerQuery controllerQuery) throws OperationFailedException, PermissionDeniedException
      Gets a list of Controllers matching the given controller query.
      Parameters:
      controllerQuery - the controller query
      Returns:
      the returned ControllerList
      Throws:
      NullArgumentException - controllerQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - controllerQuery is not of this service
      Compliance:
      mandatory - This method must be implemented.