Interface QueueConstrainerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface QueueConstrainerRuleApplicationSession extends OsidSession

This session provides methods to apply QueueConstrainers to Queues . A Queue with multiple QueueConstrainers means any positive rule evaluation across the constrainers result in an accessible Queue .

  • Method Details

    • getFrontOfficeId

      Id getFrontOfficeId()
      Gets the FrontOffice Id associated with this session.
      Returns:
      the FrontOffice Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getFrontOffice

      Gets the FrontOffice associated with this session.
      Returns:
      the office
      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 is 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 a 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 not 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 constrainer for a queue by moving the specified queue constrainer in front of a reference queue constrainer.
      Parameters:
      queueConstrainerId - the Id of a QueueConstrainer
      queueId - the Id of a 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 constrainer for a queue by moving the specified queue constrainer behind a reference queue constrainer.
      Parameters:
      queueConstrainerId - the Id of a QueueConstrainer
      queueId - the Id of a 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 a QueueConstrainer
      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.