Interface AuditInquestAssignmentSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AuditInquestAssignmentSession extends OsidSession

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

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

  • Method Details

    • canAssignAudits

      boolean canAssignAudits()
      Tests if this user can alter audit/inquest 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 assignment operations to unauthorized users.
      Returns:
      false if mapping is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • canAssignAuditsToInquest

      boolean canAssignAuditsToInquest(Id inquestId)
      Tests if this user can alter audit/inquest 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 assignment operations to unauthorized users.
      Parameters:
      inquestId - the Id of the Inquest
      Returns:
      false if mapping is not authorized, true otherwise
      Throws:
      NullArgumentException - inquestId is null
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableInquestIds

      IdList getAssignableInquestIds(Id inquestId) throws OperationFailedException
      Gets a list of inquests including and under the given inquest node in which any audit can be assigned.
      Parameters:
      inquestId - the Id of the Inquest
      Returns:
      list of assignable inquest Ids
      Throws:
      NullArgumentException - inquestId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableInquestIdsForAudit

      IdList getAssignableInquestIdsForAudit(Id inquestId, Id auditId) throws OperationFailedException
      Gets a list of inquests including and under the given inquest node in which a specific audit can be assigned.
      Parameters:
      inquestId - the Id of the Inquest
      auditId - the Id of the Audit
      Returns:
      list of assignable inquest Ids
      Throws:
      NullArgumentException - inquestId or auditId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • assignAuditToInquest

      void assignAuditToInquest(Id auditId, Id inquestId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing Audit to a Inquest .
      Parameters:
      auditId - the Id of the Audit
      inquestId - the Id of the Inquest
      Throws:
      AlreadyExistsException - auditId is already assigned to inquestId
      NotFoundException - auditId or inquestId not found
      NullArgumentException - auditId or inquestId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignAuditFromInquest

      void unassignAuditFromInquest(Id auditId, Id inquestId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an Audit from an Inquest .
      Parameters:
      auditId - the Id of the Audit
      inquestId - the Id of the Inquest
      Throws:
      NotFoundException - auditId or inquestId not found or auditId not assigned to inquestId
      NullArgumentException - auditId or inquestId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • reassignAuditToInquest

      void reassignAuditToInquest(Id auditId, Id fromInquestId, Id toInquestId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Moves an Inquiry from one Inquest to another. Mappings to other Inquests are unaffected.
      Parameters:
      auditId - the Id of the Audit
      fromInquestId - the Id of the current Inquest
      toInquestId - the Id of the destination Inquest
      Throws:
      AlreadyExistsException - auditId already assigned to toInquestId
      NotFoundException - auditId, fromInquestId , or toInquestId not found or auditiId not mapped to fromInquestId
      NullArgumentException - auditId, fromInquestId , or toInquestId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.