Interface BlogNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface BlogNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to Blogs . This session is intended for consumers needing to synchronize their entry with this service without the use of polling. Notifications are cancelled when this session is closed.

  • Method Details

    • canRegisterForBlogNotifications

      boolean canRegisterForBlogNotifications()
      Tests if this user can register for Blog 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.
    • reliableBlogNotifications

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

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

      void acknowledgeBlogNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
      Acknowledge a blog notification.
      Parameters:
      notificationId - the Id of the notification
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewBlogs

      void registerForNewBlogs() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new blogs. BlogReceiver.newBlogs() is invoked when a new Blog is created.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBlogs

      void registerForChangedBlogs() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated blogs. BlogReceiver.changedBlogs() is invoked when a blog is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBlog

      void registerForChangedBlog(Id blogId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated blog. BlogReceiver.changedBlogs() is invoked when the specified blog is changed.
      Parameters:
      blogId - the Id of the Blog to monitor
      Throws:
      NullArgumentException - blogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedBlogs

      void registerForDeletedBlogs() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted blogs. BlogReceiver.deletedBlogs() is invoked when a blog is deleted.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedBlog

      void registerForDeletedBlog(Id blogId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted blog. BlogReceiver.deletedBlogs() is invoked when the specified blog is deleted.
      Parameters:
      blogId - the Id of the Blog to monitor
      Throws:
      NullArgumentException - blogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBlogHierarchy

      void registerForChangedBlogHierarchy() throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated blog hierarchy structure. BlogReceiver.changedChildOfBlogs() is invoked when a node experiences a change in its children.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBlogHierarchyForAncestors

      void registerForChangedBlogHierarchyForAncestors(Id blogId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated blog hierarchy structure. BlogReceiver.changedChildOfBlogs() is invoked when the specified node or any of its ancestors experiences a change in its children.
      Parameters:
      blogId - the Id of the Blog node to monitor
      Throws:
      NullArgumentException - blogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedBlogHierarchyForDescendants

      void registerForChangedBlogHierarchyForDescendants(Id blogId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated blog hierarchy structure. BlogReceiver.changedChildOfBlogs() is invoked when the specified node or any of its descendants experiences a change in its children.
      Parameters:
      blogId - the Id of the Blog node to monitor
      Throws:
      NullArgumentException - blogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.