Interface DispatchProcessorRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface DispatchProcessorRuleApplicationSession extends OsidSession

This session provides methods to apply DispatchProcessors to Dispatches. Multiple DispatchProcessors applied to an Dispatch may be sequenced such that the first positive evaluation results in the DispatchProcessor used.

  • Method Details

    • getPublisherId

      Id getPublisherId()
      Gets the Publisher Id associated with this session.
      Returns:
      the Publisher Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getPublisher

      Gets the Publisher associated with this session.
      Returns:
      the publisher
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canAssignDispatchProcessors

      boolean canAssignDispatchProcessors()
      Tests if this user can alter dispatch processor/dispatch 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.
    • assignDispatchProcessorToDispatch

      void assignDispatchProcessorToDispatch(Id dispatchProcessorId, Id dispatchId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing DispatchProcessor to a Dispatch.
      Parameters:
      dispatchProcessorId - the Id of the DispatchProcessor
      dispatchId - the Id of the Dispatch
      Throws:
      AlreadyExistsException - dispatchProcessorId already applied to dispatchId
      NotFoundException - dispatchProcessorId or dispatchId not found
      NullArgumentException - dispatchProcessorId or dispatchId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignDispatchProcessorFromDispatch

      void unassignDispatchProcessorFromDispatch(Id dispatchProcessorId, Id dispatchId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an existing DispatchProcessor from a Dispatch.
      Parameters:
      dispatchProcessorId - the Id of the DispatchProcessor
      dispatchId - the Id of the Dispatch
      Throws:
      NotFoundException - dispatchProcessorId or dispatchId not found or dispatchProcessorId already applied to dispatchId
      NullArgumentException - dispatchProcessorId or dispatchId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceDispatchProcessors

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

      void moveDispatchProcessorAhead(Id dispatchProcessorId, Id dispatchId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders dispatch processors for a dispatch by moving the specified dispatch processor in front of a reference dispatch processor.
      Parameters:
      dispatchProcessorId - the Id of the DispatchProcessor
      dispatchId - the Id of the Dispatch
      referenceId - the reference dispatch processor Id
      Throws:
      NotFoundException - dispatchProcessorId dispatchId, or referenceId not found or, dispatchProcessorId or referenceId not related to dispatchId
      NullArgumentException - dispatchProcessorId, dispatchId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveDispatchProcessorBehind

      void moveDispatchProcessorBehind(Id dispatchProcessorId, Id dispatchId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders dispatch processors for a dispatch by moving the specified dispatch processor behind a reference dispatch processor.
      Parameters:
      dispatchProcessorId - the Id of the DispatchProcessor
      dispatchId - the Id of the Dispatch
      referenceId - the reference dispatch processor Id
      Throws:
      NotFoundException - dispatchProcessorId, dispatchId, or referenceId not found or, dispatchProcessorId or referenceId not related to dispatchId
      NullArgumentException - dispatchProcessorId, dispatchId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderDispatchProcessors

      void orderDispatchProcessors(Id[] dispatchProcessorIds, Id dispatchId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of dispatch processors for a dispatch.
      Parameters:
      dispatchProcessorIds - the Ids for a set of DispatchProcessors
      dispatchId - the Id of the Dispatch
      Throws:
      NotFoundException - dispatchId not found or, a dispatchProcessorId not related to dispatchId
      NullArgumentException - dispatchProcessorIds or dispatchId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.