Interface DispatchConstrainerRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface DispatchConstrainerRuleApplicationSession extends OsidSession

This session provides methods to apply DispatchConstrainers to Dispatches . Multiple DispatchConstrainers applied to an Dispatch may be sequenced such that the first positive evaluation results in the DispatchConstrainer 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.
    • canAssignDispatchConstrainers

      boolean canAssignDispatchConstrainers()
      Tests if this user can alter dispatch constrainer/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.
    • assignDispatchConstrainerToDispatch

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

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

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

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

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

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