Interface AvailabilitySmartFoundrySession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AvailabilitySmartFoundrySession extends OsidSession

This session manages queries and sequencing to create "smart" dynamic catalogs. An AvailabilityQuery can be retrieved from this session and foundryped to this Foundry to create a virtual collection of Availabilities . The availabilities may be sequenced using the AvailabilitySearchOrder from this session.

This Foundry has a default query that matches any availability and a default search order that specifies no sequencing. The queries may be examined using an AvailabilityQueryInspector . The query may be modified by converting the inspector back to an AvailabilityQuery .

  • 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.
    • canManageSmartFoundries

      boolean canManageSmartFoundries()
      Tests if this user can manage smart foundries. A return of true does not guarantee successful authorization. A return of false indicates that it is known 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 operations to unauthorized users.
      Returns:
      false if smart foundry management is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getAvailabilityQuery

      AvailabilityQuery getAvailabilityQuery()
      Gets an availability query.
      Returns:
      the availability query
      Compliance:
      mandatory - This method must be implemented.
    • getAvailabilitySearchOrder

      AvailabilitySearchOrder getAvailabilitySearchOrder()
      Gets an availability search order.
      Returns:
      the availability search order
      Compliance:
      mandatory - This method must be implemented.
    • applyAvailabilityQuery

      void applyAvailabilityQuery(AvailabilityQuery availabilityQuery) throws OperationFailedException, PermissionDeniedException
      Applies an availability query to this foundry.
      Parameters:
      availabilityQuery - the availability query
      Throws:
      NullArgumentException - availabilityQuery is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - availabilityQuery not of this service
      Compliance:
      mandatory - This method must be implemented.
    • inspecAvailabilityQuery

      Gets an availability query inspector for this foundry.
      Returns:
      the availability query inspector
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      Compliance:
      mandatory - This method must be implemented.
    • applyAvailabilitySequencing

      void applyAvailabilitySequencing(AvailabilitySearchOrder availabilitySearchOrder) throws OperationFailedException, PermissionDeniedException
      Applies an availability search order to this foundry.
      Parameters:
      availabilitySearchOrder - the availability search order
      Throws:
      NullArgumentException - availabilitySearchOrder is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure occurred
      UnsupportedException - availabilitySearchOrder not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getAvailabilityQueryFromInspector

      AvailabilityQuery getAvailabilityQueryFromInspector(AvailabilityQueryInspector availabilityQueryInspector)
      Gets an availability query from an inspector.
      Parameters:
      availabilityQueryInspector - an availability query inspector
      Returns:
      the availability query
      Throws:
      NullArgumentException - availabilityQueryInspector is null
      UnsupportedException - availabilityQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.