Interface PoolLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface PoolLookupSession extends OsidSession

This session provides methods for retrieving Pool objects. The Pool represents a fixed connection between two Provisionables .

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition
  • isolated broker view: All pool methods in this session operate, retrieve and pertain to pools defined explicitly in the current broker. Using an isolated view is useful for managing Pools with the PoolAdminSession .
  • federated broker view: All pool methods in this session operate, retrieve and pertain to all pools defined in this broker and any other pools implicitly available in this broker through broker inheritence.
  • active pool view: active pools are returned from methods in this session
  • any status pool view: active and inactive pools are returned from methods in this session

Generally, the comparative view should be used for most applications as it permits operation even if there is data that cannot be accessed. The methods useFederatedDistributorView() and useIsolatedDistributorView() behave as a radio group and one should be selected before invoking any lookup methods.

  • Method Details

    • getDistributorId

      Id getDistributorId()
      Gets the Distributor Id associated with this session.
      Returns:
      the Distributor Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getDistributor

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

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

      void useComparativePoolView()
      The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.
      Compliance:
      mandatory - This method is must be implemented.
    • usePlenaryPoolView

      void usePlenaryPoolView()
      A complete view of the Pool returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • useFederatedDistributorView

      void useFederatedDistributorView()
      Federates the view for methods in this session. A federated view will include pools in distributors which are children of this broker in the distributor hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedDistributorView

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

      void useActivePoolView()
      Only active pools are returned from methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • useAnyStatusPoolView

      void useAnyStatusPoolView()
      Borth active and inactive pools are returned from methods in this session.
      Compliance:
      mandatory - This method is must be implemented.
    • getPool

      Gets the Pool specified by its Id . In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Pool may have a different Id than requested, such as the case where a duplicate Id was assigned to a Pool and retained for compatibility. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      poolId - Id of the Pool
      Returns:
      the pool
      Throws:
      NotFoundException - poolId not found
      NullArgumentException - poolId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method is must be implemented.
    • getPoolsByIds

      Gets a PoolList corresponding to the given IdList . In plenary mode, the returned list contains all of the pools specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Pools may be omitted from the list and may present the elements in any order including returning a unique set. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      poolIds - the list of Ids to retrieve
      Returns:
      the returned Pool list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - poolIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPoolsByGenusType

      PoolList getPoolsByGenusType(Type poolGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a PoolList corresponding to the given pool genus Type which does not include pools of genus types derived from the specified Type . In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      poolGenusType - a pool genus type
      Returns:
      the returned Pool list
      Throws:
      NullArgumentException - poolGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPoolsByParentGenusType

      PoolList getPoolsByParentGenusType(Type poolGenusType) throws OperationFailedException, PermissionDeniedException
      Gets a PoolList corresponding to the given pool genus Type and include any additional pools with genus types derived from the specified Type . In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      poolGenusType - a pool genus type
      Returns:
      the returned Pool list
      Throws:
      NullArgumentException - poolGenusType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPoolsByRecordType

      PoolList getPoolsByRecordType(Type poolRecordType) throws OperationFailedException, PermissionDeniedException
      Gets a PoolList containing the given pool record Type . In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      poolRecordType - a pool record type
      Returns:
      the returned Pool list
      Throws:
      NullArgumentException - poolRecordType is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPoolsForBroker

      PoolList getPoolsForBroker(Id brokerId) throws OperationFailedException, PermissionDeniedException
      Gets a PoolList by broker. In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      brokerId - a broker Id
      Returns:
      the returned Pool list
      Throws:
      NullArgumentException - brokerId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPoolsBySupplier

      PoolList getPoolsBySupplier(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Gets a PoolList by supplier. In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Parameters:
      resourceId - a resource Id
      Returns:
      the returned Pool list
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getPools

      Gets all Pools . In plenary mode, the returned list contains all known pools or an error results. Otherwise, the returned list may contain only those pools that are accessible through this session. In active mode, pools are returned that are currently active. In any status mode, active and inactive pool are returned.
      Returns:
      a list of Pools
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.