Interface QueueProcessorAdminSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface QueueProcessorAdminSession extends OsidSession

This session creates and removes queue processors. The data for create and update is provided via the QueueProcessorForm .

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

      boolean canCreateQueueProcessor()
      Tests if this user can create queue processors. A return of true does not guarantee successful authorization. A return of false indicates that it is known creating a QueueProcessor will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer create operations to an unauthorized user.
      Returns:
      false if QueueProcessor creation is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canCreateQueueProcessorWithRecordTypes

      boolean canCreateQueueProcessorWithRecordTypes(Type[] queueProcessorRecordTypes)
      Tests if this user can create a single QueueProcessor using the desired record types. While TrackingRulesManager.getQueueProcessorRecordTypes() can be used to examine which records are supported, this method tests which record(s) are required for creating a specific QueueProcessor . Providing an empty array tests if a QueueProcessor can be created with no records.
      Parameters:
      queueProcessorRecordTypes - array of queue processor record types
      Returns:
      true if QueueProcessor creation using the specified record Types is supported, false otherwise
      Throws:
      NullArgumentException - queueProcessorRecordTypes is null
      Compliance:
      mandatory - This method must be implemented.
    • getQueueProcessorFormForCreate

      QueueProcessorForm getQueueProcessorFormForCreate(Type[] queueProcessorRecordTypes) throws OperationFailedException, PermissionDeniedException
      Gets the queue processor form for creating new queue processors. A new form should be requested for each create transaction.
      Parameters:
      queueProcessorRecordTypes - array of queue processor record types
      Returns:
      the queue processor form
      Throws:
      NullArgumentException - queueProcessorRecordTypes is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - unable to get form for requested record types
      Compliance:
      mandatory - This method must be implemented.
    • createQueueProcessor

      QueueProcessor createQueueProcessor(QueueProcessorForm queueProcessorForm) throws OperationFailedException, PermissionDeniedException
      Creates a new QueueProcessor .
      Parameters:
      queueProcessorForm - the form for this QueueProcessor
      Returns:
      the new QueueProcessor
      Throws:
      IllegalStateException - queueProcessorForm already used in a create transaction
      InvalidArgumentException - one or more of the form elements is invalid
      NullArgumentException - queueProcessorForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - queueProcessorForm did not originate from getQueueProcessorFormForCreate()
      Compliance:
      mandatory - This method must be implemented.
    • canUpdateQueueProcessors

      boolean canUpdateQueueProcessors()
      Tests if this user can update queue processors. A return of true does not guarantee successful authorization. A return of false indicates that it is known updating a QueueProcessor will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer update operations to an unauthorized user.
      Returns:
      false if QueueProcessor modification is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getQueueProcessorFormForUpdate

      QueueProcessorForm getQueueProcessorFormForUpdate(Id queueProcessorId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the queue processor form for updating an existing queue processor. A new queue processor form should be requested for each update transaction.
      Parameters:
      queueProcessorId - the Id of the QueueProcessor
      Returns:
      the queue processor form
      Throws:
      NotFoundException - queueProcessorId is not found
      NullArgumentException - queueProcessorId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • updateQueueProcessor

      void updateQueueProcessor(QueueProcessorForm queueProcessorForm) throws OperationFailedException, PermissionDeniedException
      Updates an existing queue processor.
      Parameters:
      queueProcessorForm - the form containing the elements to be updated
      Throws:
      IllegalStateException - queueProcessorForm already used in an update transaction
      InvalidArgumentException - the form contains an invalid value
      NullArgumentException - queueProcessorForm is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - queueProcessorForm did not originate from getQueueProcessorFormForUpdate()
      Compliance:
      mandatory - This method must be implemented.
    • canDeleteQueueProcessors

      boolean canDeleteQueueProcessors()
      Tests if this user can delete queue processors. A return of true does not guarantee successful authorization. A return of false indicates that it is known deleting a QueueProcessor will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer delete operations to an unauthorized user.
      Returns:
      false if QueueProcessor deletion is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • deleteQueueProcessor

      void deleteQueueProcessor(Id queueProcessorId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Deletes a QueueProcessor .
      Parameters:
      queueProcessorId - the Id of the QueueProcessor to remove
      Throws:
      NotFoundException - queueProcessorId not found
      NullArgumentException - queueProcessorId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canManageQueueProcessorAliases

      boolean canManageQueueProcessorAliases()
      Tests if this user can manage Id aliases for queue processors. A return of true does not guarantee successful authorization. A return of false indicates that it is known changing an alias will result in a PERMISSION_DENIED . This is intended as a hint to an application that may opt not to offer alias operations to an unauthorized user.
      Returns:
      false if QueueProcessor aliasing is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • aliasQueueProcessor

      void aliasQueueProcessor(Id queueProcessorId, Id aliasId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds a Id to a QueueProcessor for the purpose of creating compatibility. The primary Id of the QueueProcessor is determined by the provider. The new Id performs as an alias to the primary Id . If the alias is a pointer to another queue processor. it is reassigned to the given queue processor Id .
      Parameters:
      queueProcessorId - the Id of a QueueProcessor
      aliasId - the alias Id
      Throws:
      AlreadyExistsException - aliasId is already assigned
      NotFoundException - queueProcessorId not found
      NullArgumentException - queueProcessorId or aliasId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.