Interface IssueProcessorRuleApplicationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface IssueProcessorRuleApplicationSession extends OsidSession

This session provides methods to apply IssueProcessors to Issues. Multiple IssueProcessors applied to an Issue may be sequenced such that the first positive evaluation results in the IssueProcessor used.

  • Method Details

    • getOublietteId

      Id getOublietteId()
      Gets the Oubliette Id associated with this session.
      Returns:
      the Oubliette Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getOubliette

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

      boolean canAssignIssueProcessors()
      Tests if this user can alter issue processor/issue 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.
    • assignIssueProcessorToIssue

      void assignIssueProcessorToIssue(Id issueProcessorId, Id issueId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing IssueProcessorr to an Issue.
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      issueId - the Id of the Issue
      Throws:
      AlreadyExistsException - issueProcessorId already applied to issueId
      NotFoundException - issueProcessorId or issueId not found
      NullArgumentException - issueProcessorId or issueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignIssueProcessorFromIssue

      void unassignIssueProcessorFromIssue(Id issueProcessorId, Id issueId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an existing IssueProcessor from an Issue.
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      issueId - the Id of the Issue
      Throws:
      NotFoundException - issueProcessorId or issueId not found or issueProcessorId already applied to issueId
      NullArgumentException - issueProcessorId or issueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canSequenceIssueProcessors

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

      void moveIssueProcessorAhead(Id issueProcessorId, Id issueId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders issue processors for an issue by moving the specified issue processor in front of a reference issue processor.
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      issueId - the Id of the Issue
      referenceId - the reference issue processor Id
      Throws:
      NotFoundException - issueProcessorId issueId, or referenceId not found or, issueProcessorId or referenceId not related to issueId
      NullArgumentException - issueProcessorId, issueId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • moveIssueProcessorBehind

      void moveIssueProcessorBehind(Id issueProcessorId, Id issueId, Id referenceId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders issue processors for an issue by moving the specified issue processor behind a reference issue processor.
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      issueId - the Id of the Issue
      referenceId - the reference issue processor Id
      Throws:
      NotFoundException - issueProcessorId, issueId, or referenceId not found or, issueProcessorId or referenceId not related to issueId
      NullArgumentException - issueProcessorId, issueId, or referenceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • orderIssueProcessors

      void orderIssueProcessors(Id[] issueProcessorIds, Id issueId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Reorders a set of issue processors for an issue.
      Parameters:
      issueProcessorIds - the Ids for a set of IssueProcessors
      issueId - the Id of the Issue
      Throws:
      NotFoundException - issueId not found or, an issueProcessorId not related to issueId
      NullArgumentException - issueProcessorIds or issueId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.