Interface BranchQuerySession

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

public interface BranchQuerySession extends OsidSession

This session provides methods for searching among Branches. The search query is constructed using the BranchQuery.

This session defines views that offer differing behaviors for searching.

  • federated journal view: searches include branches in journals of which this journal is a ancestor in the journal hierarchy
  • isolated journal view: searches are restricted to branches in this journal

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

  • Method Details

    • getJournalId

      Id getJournalId()
      Gets the Journal Id associated with this session.
      Returns:
      the Journal Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getJournal

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

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

      void useFederatedJournalView()
      Federates the view for methods in this session. A federated view will include branches in journals which are children of this journal in the journal hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedJournalView

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

      BranchQuery getBranchQuery()
      Gets a branch query. The returned query will not have an extension query.
      Returns:
      the branch query
      Compliance:
      mandatory - This method must be implemented.
    • getBranchesByQuery

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