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.