Interface QueueLookupSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface QueueLookupSession extends OsidSession

This session provides methods for retrieving Queues . The Queue represents a set of pools.

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 distributor view: All queue methods in this session operate, retrieve and pertain to queues defined explicitly in the current distributor. Using an isolated view is useful for managing Queues with the QueueAdminSession .
  • federated distributor view: All queue methods in this session operate, retrieve and pertain to all queues defined in this distributor and any other queues implicitly available in this distributor through distributor inheritence.
  • active queue view: active queues are returned from methods in this session
  • any status queue view: active and inactive queues 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 the methods in this session.

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

      boolean canLookupQueues()
      Tests if this user can perform Queue 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.
    • useComparativeQueueView

      void useComparativeQueueView()
      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.
    • usePlenaryQueueView

      void usePlenaryQueueView()
      A complete view of the QueueConstrainer 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 queue constrainers in distributors which are children of this distributor 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.
    • useActiveQueueView

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

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

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

      Gets a QueueList corresponding to the given IdList . In plenary mode, the returned list contains all of the queues 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 Queues may be omitted from the list and may present the elements in any order including returning a unique set. In active mode, queues are returned that are currently active. In any status mode, active and inactive queues are returned.
      Parameters:
      queueIds - the list of Ids to retrieve
      Returns:
      the returned Queue list
      Throws:
      NotFoundException - an Id was not found
      NullArgumentException - queueIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getQueuesByGenusType

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

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

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

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

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

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