Interface PeriodQuerySession

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

public interface PeriodQuerySession extends OsidSession

This session provides methods for searching among Periods . The search query is constructed using the PeriodQuery .

This session defines views that offer differing behaviors for searching.

  • federated business view: searches include periods in businesses of which this business is an ancestor in the business hierarchy
  • isolated business view: searches are restricted to periods in this business

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

  • Method Details

    • getBusinessId

      Id getBusinessId()
      Gets the Business Id associated with this session.
      Returns:
      the Business Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getBusiness

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

      boolean canSearchPeriods()
      Tests if this user can perform Period 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.
    • useFederatedBusinessView

      void useFederatedBusinessView()
      Federates the view for methods in this session. A federated view will include periods in business which are children of this business in the business hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedBusinessView

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

      PeriodQuery getPeriodQuery()
      Gets a period query.
      Returns:
      the period query
      Compliance:
      mandatory - This method must be implemented.
    • getPeriodsByQuery

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