Interface PostEntryNotificationSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface PostEntryNotificationSession extends OsidSession

This session defines methods to receive notifications on adds/changes to PostEntries . in this Business . This also includes existing post entries that may appear or disappear due to changes in the Business 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 PostEntryLookupSession .

  • Method Details

    • getBusinessId

      Id getBusinessId()
      Gets the Business Id associated with this session.
      Returns:
      the Business Id associated with this session
      Compliance:
      mandatory - This method must be implemented.
    • getBusiness

      Gets the Business associated with this session.
      Returns:
      the business
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • canRegisterForPostEntryNotifications

      boolean canRegisterForPostEntryNotifications()
      Tests if this user can register for PostEntry 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.
    • useFederatedBusinessView

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

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

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

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

      void acknowledgePostEntryNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
      Acknowledge a post 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.
    • registerForNewPostEntries

      void registerForNewPostEntries() throws OperationFailedException, PermissionDeniedException
      Register for notifications of new post entries. PostEntryReceiver.newPostEntries() is invoked when a new PostEntry appears in this business.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewPostEntriesForPost

      void registerForNewPostEntriesForPost(Id postId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new post entries for the given post. PostEntryReceiver.newPostEntries() is invoked when a new PostEntry appears in this business.
      Parameters:
      postId - the Id of the Post to monitor
      Throws:
      NullArgumentException - postId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewPostEntriesForAccount

      void registerForNewPostEntriesForAccount(Id accountId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new post entries for the given account. PostEntryReceiver.newPostEntries() is invoked when a new PostEntry appears in this business.
      Parameters:
      accountId - the Id of the Account to monitor
      Throws:
      NullArgumentException - accountId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForNewPostEntriesForActivity

      void registerForNewPostEntriesForActivity(Id activityId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of new post entries for the given activity. PostEntryReceiver.newPostEntries() is invoked when a new PostEntry appears in this business.
      Parameters:
      activityId - the Id of the Activity to monitor
      Throws:
      NullArgumentException - activityId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedPostEntries

      void registerForChangedPostEntries() throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated payers. PostEntryReceiver.changedPostEntries() is invoked when a post entry in this business is changed.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedPostEntriesForPost

      void registerForChangedPostEntriesForPost(Id postId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of updated post entries for the given post. PostEntryReceiver.changedPostEntries() is invoked when the specified post entry in this business is changed.
      Parameters:
      postId - the Id of the Post to monitor
      Throws:
      NullArgumentException - postId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedPostEntriesForAccount

      void registerForChangedPostEntriesForAccount(Id accountId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated post entries for the given account. PostEntryReceiver.changedPostEntries() is invoked when a PostEntry is changed in this business.
      Parameters:
      accountId - the Id of the Account to monitor
      Throws:
      NullArgumentException - accountId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedPostEntriesForActivity

      void registerForChangedPostEntriesForActivity(Id activityId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of updated post entries for the given activity. PostEntryReceiver.changedPostEntries() is invoked when a PostEntry is changed in this business.
      Parameters:
      activityId - the Id of the Activity to monitor
      Throws:
      NullArgumentException - activityId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForChangedPostEntry

      void registerForChangedPostEntry(Id postEntryId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of an updated post entries. PostEntryReceiver.changedPostEntries() is invoked when the specified post entry in this business is changed.
      Parameters:
      postEntryId - the Id of the PostEntry to monitor
      Throws:
      NullArgumentException - postEntryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedPostEntries

      void registerForDeletedPostEntries() throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted post entries. PostEntryReceiver.deletedPostEntries() is invoked when a post entry is deleted or removed from this business.
      Throws:
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedPostEntriesForPost

      void registerForDeletedPostEntriesForPost(Id postId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of deleted post entries for the given post. PostEntryReceiver.deletedPostEntries() is invoked when the specified post entry is deleted or removed from this business.
      Parameters:
      postId - the Id of the Post to monitor
      Throws:
      NullArgumentException - postId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedPostEntriesForAccount

      void registerForDeletedPostEntriesForAccount(Id accountId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted post entries for the given account. PostEntryReceiver.deletedPostEntries() is invoked when a PostEntry is removed or deleted from this business.
      Parameters:
      accountId - the Id of the Account to monitor
      Throws:
      NullArgumentException - accountId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedPostEntriesForActivity

      void registerForDeletedPostEntriesForActivity(Id activityId) throws OperationFailedException, PermissionDeniedException
      Register for notifications of deleted post entries for the given activity. PostEntryReceiver.deletedPostEntry() is invoked when a PostEntry is removed or deleted from this business.
      Parameters:
      activityId - the Id of the Activity to monitor
      Throws:
      NullArgumentException - activityId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • registerForDeletedPostEntry

      void registerForDeletedPostEntry(Id postEntryId) throws OperationFailedException, PermissionDeniedException
      Registers for notification of a deleted post entries. PostEntryReceiver.deletedPostEntries() is invoked when the specified post entry is deleted or removed from this business.
      Parameters:
      postEntryId - the Id of the PostEntry to monitor
      Throws:
      NullArgumentException - postEntryId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.