Interface IssueProcessorOublietteAssignmentSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface IssueProcessorOublietteAssignmentSession extends OsidSession

This session provides methods to re-assign IssueProcessors to Oubliette mappings. An IssueProcessor may appear in multiple Oubliette catalogs and removing the last reference to an IssueProcessor is the equivalent of deleting it. Each Oubliette may have its own authorizations governing who is allowed to operate on it.

Adding a reference of an IssueProcessor to another Oubliette is not a copy operation (eg: does not change its Id ).

  • Method Details

    • canAssignIssueProcessors

      boolean canAssignIssueProcessors()
      Tests if this user can alter issue processor/oubliette 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. T his is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.
      Returns:
      false if mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canAssignIssueProcessorToOubliette

      boolean canAssignIssueProcessorToOubliette(Id oublietteId)
      Tests if this user can alter issue processor/oubliette 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. T his is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.
      Parameters:
      oublietteId - the Id of the Oubliette
      Returns:
      false if mapping is not authorized, true otherwise
      Throws:
      NullArgumentException - oublietteId is null
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableOublietteIds

      IdList getAssignableOublietteIds(Id oublietteId) throws OperationFailedException
      Gets a list of oubliettes including and under the given oubliette node in which any issue processor can be assigned.
      Parameters:
      oublietteId - the Id of the Oubliette
      Returns:
      list of assignable oubliette Ids
      Throws:
      NullArgumentException - oublietteId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableOublietteIdsForIssueProcessor

      IdList getAssignableOublietteIdsForIssueProcessor(Id oublietteId, Id issueProcessorId) throws OperationFailedException
      Gets a list of oubliettes including and under the given oubliette node in which a specific issue processor can be assigned.
      Parameters:
      oublietteId - the Id of the Oubliette
      issueProcessorId - the Id of the IssueProcessor
      Returns:
      list of assignable oubliette Ids
      Throws:
      NullArgumentException - oublietteId or issueProcessorId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • assignIssueProcessorToOubliette

      void assignIssueProcessorToOubliette(Id issueProcessorId, Id oublietteId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing IssueProcessor to an oublietteId .
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      oublietteId - the Id of the Oubliette
      Throws:
      AlreadyExistsException - issueProcessorId is already assigned to oublietteId
      NotFoundException - issueProcessorId or oublietteId not found
      NullArgumentException - issueProcessorId or oublietteId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignIssueProcessorFromOubliette

      void unassignIssueProcessorFromOubliette(Id issueProcessorId, Id oublietteId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an IssueProcessor from an Oubliette .
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      oublietteId - the Id of the Oubliette
      Throws:
      NotFoundException - issueProcessorId or oublietteId not found or issueProcessorId not assigned to oublietteId
      NullArgumentException - issueProcessorId or oublietteId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • reassignIssueProcessorToOubliette

      void reassignIssueProcessorToOubliette(Id issueProcessorId, Id fromOublietteId, Id toOublietteId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Moves an IssueProcessor from one Oubliette to another. Mappings to other Oubliettes are unaffected.
      Parameters:
      issueProcessorId - the Id of the IssueProcessor
      fromOublietteId - the Id of the current Oubliette
      toOublietteId - the Id of the destination Oubliette
      Throws:
      AlreadyExistsException - issueProcessorId already assigned to toOublietteId
      NotFoundException - issueProcessorId, fromOublietteId , or toOublietteeId not found or issueProcessorId not mapped to fromOublietteId
      NullArgumentException - issueProcessorId, fromOublietteId , or toOublietteId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.