Interface QueueConstrainerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface QueueConstrainerRuleApplicationSession extends OsidSession

This session provides methods to apply QueueConstrainers to Queues . Multiple QueueConstrainers applied to an Queue may be sequenced such that the first positive evaluation results in the QueueConstrainer used.

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

      boolean canAssignQueueConstrainers()
      Tests if this user can alter queue constrainer/queue mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • assignQueueConstrainerToQueue

      void assignQueueConstrainerToQueue(Id queueConstrainerId, Id queueId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing QueueConstrainer to a Queue .
      Parameters:
      queueConstrainerId - the Id of the QueueConstrainer
      queueId - the Id of the Queue
      Throws:
      AlreadyExistsException - queueConstrainerId already applied to queueId
      NotFoundException - queueConstrainerId or queueId not found
      NullArgumentException - queueConstrainerId or queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignQueueConstrainerFromQueue

      void unassignQueueConstrainerFromQueue(Id queueConstrainerId, Id queueId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an existing QueueConstrainer from a Queue .
      Parameters:
      queueConstrainerId - the Id of the QueueConstrainer
      queueId - the Id of the Queue
      Throws:
      NotFoundException - queueConstrainerId or queueId not found or queueConstrainerId already applied to queueId
      NullArgumentException - queueConstrainerId or queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceQueueConstrainers

      boolean canSequenceQueueConstrainers()
      Tests if this user can order QueueConstrainers . A return of true does not guarantee successful authorization. A return of false indicates that it is known sequencing operations will result in a PERMISSION_DENIED .This is intended as a hint to an application that may opt not to offer sequencing operations to an unauthorized user.
      Returns:
      false if QueueConstrainer ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveQueueConstrainerAhead

      void moveQueueConstrainerAhead(Id queueConstrainerId, Id queueId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders queue constrainers for a queue by moving the specified queue constrainer in front of a reference queue constrainer.
      Parameters:
      queueConstrainerId - the Id of the QueueConstrainer
      queueId - the Id of the Queue
      referenceId - the reference queue constrainer Id
      Throws:
      NotFoundException - queueConstrainerId, queueId , or referenceId not found or, queueConstrainerId or referenceId not related to queueId
      NullArgumentException - queueConstrainerId, queueId , or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveQueueConstrainerBehind

      void moveQueueConstrainerBehind(Id queueConstrainerId, Id queueId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders queue constrainers for a queue by moving the specified queue constrainer behind a reference queue constrainer.
      Parameters:
      queueConstrainerId - the Id of the QueueConstrainer
      queueId - the Id of the Queue
      referenceId - the reference queue constrainer Id
      Throws:
      NotFoundException - queueConstrainerId, queueId , or referenceId not found or, queueConstrainerId or referenceId not related to queueId
      NullArgumentException - queueConstrainerId, queueId , or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderQueueConstrainers

      void orderQueueConstrainers(Id[] queueConstrainerIds, Id queueId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of queue constrainers for a queue.
      Parameters:
      queueConstrainerIds - the Ids for a set of QueueConstrainers
      queueId - the Id of the Queue
      Throws:
      NotFoundException - queueId not found or, a queueConstrainerId not related to queueId
      NullArgumentException - queueConstrainerIds or queueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.