Interface AssessmentEntryNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface AssessmentEntryNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to AssessmentEntry objects in this CourseCatalog . This also includes existing courses that may appear or disappear due to changes in the CourseCatalog hierarchy, This session is intended for consumers needing to synchronize their state with this service without the use of polling. Notifications are cancelled when this session is closed.

The two views defined in this session correspond to the views in the AssessmentEntryLookupSession .

  • Method Details

    • getCourseCatalogId

      Id getCourseCatalogId()
      Gets the CourseCatalog Id associated with this session.
      Returns:
      the CourseCatalog Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getCourseCatalog

      Gets the CourseCatalog associated with this session.
      Returns:
      the course catalog
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canRegisterForAssessmentEntryNotifications

      boolean canRegisterForAssessmentEntryNotifications()
      Tests if this user can register for AssessmentEntry notifications. A return of true does not guarantee successful authorization. A return of false indicates that it is known all 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 notification operations.
      Returns:
      false if notification methods are not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useFederatedCourseCatalogView

      void useFederatedCourseCatalogView()
      Federates the view for methods in this session. A federated view will include assessment entries in catalogs which are children of this catalog in the course catalog hierarchy.
      Compliance:
      mandatory - This method is must be implemented.
    • useIsolatedCourseCatalogView

      void useIsolatedCourseCatalogView()
      Isolates the view for methods in this session. An isolated view restricts notifications to this course catalog only.
      Compliance:
      mandatory - This method is must be implemented.
    • reliableAssessmentEntryNotifications

      void reliableAssessmentEntryNotifications()
      Reliable notifications are desired. In reliable mode, notifications are to be acknowledged using acknowledgeAssessmentEntryNotification() .
      Compliance:
      mandatory - This method is must be implemented.
    • unreliableAssessmentEntryNotifications

      void unreliableAssessmentEntryNotifications()
      Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.
      Compliance:
      mandatory - This method is must be implemented.
    • acknowledgeAssessmentEntryNotification

      void acknowledgeAssessmentEntryNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
      Acknowledge an assessmeny entry notification.
      Parameters:
      notificationId - the Id of the notification
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewAssessmentEntries

      void registerForNewAssessmentEntries() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new assessment entries. AssessmentEntryReceiver.newAssessmentEntries() is invoked when a new AssessmentEntry appears in this course catalog.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewAssessmentEntriesForStudent

      void registerForNewAssessmentEntriesForStudent(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of new assessment entries for the given student. AssessmentEntryReceiver.newAssessmentEntries() is invoked when a new assessment entry appears in this course catalog.
      Parameters:
      resourceId - the Id of the Resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewAssessmentEntriesForAssessment

      void registerForNewAssessmentEntriesForAssessment(Id assessmentId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of new assessment entries for the given assessment. AssessmentEntryReceiver.newAssessmentEntries() is invoked when a new assessment entry appears in this course catalog.
      Parameters:
      assessmentId - the Id of the Assessment to monitor
      Throws:
      NullArgumentException - assessmentId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedAssessmentEntries

      void registerForChangedAssessmentEntries() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated assessment entries. AssessmentEntryReceiver.changedAssessmentEntries() is invoked when an assessment entry in this course catalog is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedAssessmentEntriesForStudent

      void registerForChangedAssessmentEntriesForStudent(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated assessment entries for the given student. AssessmentEntryReceiver.changedAssessmentEntries() is invoked when an assessment entry is changed in this course catalog.
      Parameters:
      resourceId - the Id of the Resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedAssessmentEntriesForAssessment

      void registerForChangedAssessmentEntriesForAssessment(Id assessmentId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated assessment entries for the given assessment. AssessmentEntryReceiver.changedAssessmentEntries() is invoked when an assessment entry is changed in this course catalog.
      Parameters:
      assessmentId - the Id of the Assessment to monitor
      Throws:
      NullArgumentException - assessmentId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedAssessmentEntry

      void registerForChangedAssessmentEntry(Id assessmentEntryId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated assessment entry. AssessmentEntryReceiver.changedAssessmentEntries() is invoked when the specified assessment entry in this course catalog is changed.
      Parameters:
      assessmentEntryId - the Id of the AssessmentEntry to monitor
      Throws:
      NullArgumentException - assessmentEntryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedAssessmentEntries

      void registerForDeletedAssessmentEntries() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted assessment entries. AssessmentEntryReceiver.deletedAssessmentEntries() is invoked when an assessment entry is deleted or removed from this course catalog.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedAssessmentEntriesForStudent

      void registerForDeletedAssessmentEntriesForStudent(Id resourceId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted assessment entries for the given student. AssessmentEntryReceiver.deletedAssessmentEntries() is invoked when an assessment entry is deleted or removed from this course catalog.
      Parameters:
      resourceId - the Id of the Resource to monitor
      Throws:
      NullArgumentException - resourceId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedAssessmentEntriesForAssessment

      void registerForDeletedAssessmentEntriesForAssessment(Id assessmentId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted assessment entries for the given assessment. AssessmentEntryReceiver.deletedAssessmentEntries() is invoked when an assessment entry is deleted or removed from this course catalog.
      Parameters:
      assessmentId - the Id of the Assessment to monitor
      Throws:
      NullArgumentException - assessmentId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedAssessmentEntry

      void registerForDeletedAssessmentEntry(Id assessmentEntryId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted assessment entry. AssessmentEntryReceiver.deletedAssessmentEntries() is invoked when the specified assessment entry is deleted or removed from this course catalog.
      Parameters:
      assessmentEntryId - the Id of the AssessmentEntry to monitor
      Throws:
      NullArgumentException - assessmentEntryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.