Interface WorkQuerySession

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

public interface WorkQuerySession extends OsidSession

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

This session defines views that offer differing behaviors for searching.

  • federated foundry view: searches include works in foundries of which this foundry is an ancestor in the foundry hierarchy
  • isolated foundry view: searches are restricted to works in this foundry

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

  • Method Details

    • getFoundryId

      Id getFoundryId()
      Gets the Foundry Id associated with this session.
      Returns:
      the Foundry Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getFoundry

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

      boolean canSearchWorks()
      Tests if this user can perform Work 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.
    • useFederatedFoundryView

      void useFederatedFoundryView()
      Federates the view for methods in this session. A federated view will include works in foundries which are children of this foundry in the foundry hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedFoundryView

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

      WorkQuery getWorkQuery()
      Gets a work query.
      Returns:
      the work query
      Compliance:
      mandatory - This method must be implemented.
    • getWorksByQuery

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