Interface QueueEnablerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface QueueEnablerRuleApplicationSession extends OsidSession

This session provides methods to apply QueueEnablers to Queues. Multiple QueueEnablers applied to an Queue may be sequenced such that the first positive evaluation results in the QueueEnablers 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.
    • canAssignQueueEnablers

      boolean canAssignQueueEnablers()
      Tests if this user can alter queue enabler/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.
    • assignQueueEnablerToQueue

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

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

      boolean canSequenceQueueEnablers()
      Tests if this user can order QueueEnablers. 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 QueueEnabler ordering is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • moveQueueEnablerAhead

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

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

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