Interface AssessmentEntryCourseCatalogAssignmentSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AssessmentEntryCourseCatalogAssignmentSession extends OsidSession

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

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

  • Method Details

    • canAssignAssessmentEntries

      boolean canAssignAssessmentEntries()
      Tests if this user can alter assessment entry/course catalog 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.
    • canAssignAssessmentEntryToCourseCatalog

      boolean canAssignAssessmentEntryToCourseCatalog(Id courseCatalogId)
      Tests if this user can alter assessment entry/course catalog 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.
      Parameters:
      courseCatalogId - the Id of the CourseCatalog
      Returns:
      false if mapping is not authorized, true otherwise
      Throws:
      NullArgumentException - courseCatalogId is null
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableCourseCatalogIds

      IdList getAssignableCourseCatalogIds(Id courseCatalogId) throws OperationFailedException
      Gets a list of course catalogs including and under the given course catalog node in which any assessment entry can be assigned.
      Parameters:
      courseCatalogId - the Id of the CourseCatalog
      Returns:
      list of assignable course catalog Ids
      Throws:
      NullArgumentException - courseCatalogId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getAssignableCourseCatalogIdsForAssessmentEntry

      IdList getAssignableCourseCatalogIdsForAssessmentEntry(Id courseCatalogId, Id assessmentEntryId) throws OperationFailedException
      Gets a list of course catalogs including and under the given course catalog node in which a specific assessment entry can be assigned.
      Parameters:
      courseCatalogId - the Id of the CourseCatalog
      assessmentEntryId - the Id of the AssessmentEntry
      Returns:
      list of assignable course catalog Ids
      Throws:
      NullArgumentException - courseCatalogId or assessmentEntryId is null
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • assignAssessmentEntryToCourseCatalog

      void assignAssessmentEntryToCourseCatalog(Id assessmentEntryId, Id courseCatalogId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Adds an existing AssessmentEntry to a CourseCatalog .
      Parameters:
      assessmentEntryId - the Id of the AssessmentEntry
      courseCatalogId - the Id of the CourseCatalog
      Throws:
      AlreadyExistsException - assessmentEntryId is already assigned to courseCatalogId
      NotFoundException - assessmentEntryId or courseCatalogId not found
      NullArgumentException - assessmentEntryId or courseCatalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • unassignAssessmentEntryFromCourseCatalog

      void unassignAssessmentEntryFromCourseCatalog(Id assessmentEntryId, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Removes an AssessmentEntry from a CourseCatalog .
      Parameters:
      assessmentEntryId - the Id of the AssessmentEntry
      courseCatalogId - the Id of the CourseCatalog
      Throws:
      NotFoundException - assessmentEntryId or courseCatalogId not found or assessmentEntryId not assigned to courseCatalogId
      NullArgumentException - assessmentEntryId or courseCatalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • reassignAssessmentEntryToCourseCatalog

      void reassignAssessmentEntryToCourseCatalog(Id assessmentEntryId, Id fromCourseCatalogId, Id toCourseCatalogId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException
      Moves an AssessmentEntry from one CourseCatalog to another. Mappings to other CourseCatalogs are unaffected.
      Parameters:
      assessmentEntryId - the Id of the AssessmentEntry
      fromCourseCatalogId - the Id of the current CourseCatalog
      toCourseCatalogId - the Id of the destination CourseCatalog
      Throws:
      AlreadyExistsException - assessmentEntryId already assigned to toCourseCatalogId
      NotFoundException - assessmentEntryId, fromCourseCatalogId , or toCourseCatalogId not found or assessmentEntryId not mapped to fromCourseCatalogId
      NullArgumentException - assessmentEntryId, fromCourseCatalogId , or toCourseCatalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.