public interface PublisherNotificationSession extends OsidSession
This session defines methods to receive notifications on adds/changes
to Publisher
objects. 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.
Notifications are triggered with changes to the Publisher
object itself. Adding and removing subscriptions result in
notifications available from the notification session for subscriptions.
Modifier and Type | Method and Description |
---|---|
void |
acknowledgePublisherNotification(Id notificationId)
Acknowledge a publisher notification.
|
boolean |
canRegisterForPublisherNotifications()
Tests if this user can register for
Publisher
notifications. |
void |
registerForChangedPublisher(Id publisherId)
Registers for notification of an updated publisher.
|
void |
registerForChangedPublisherHierarchy()
Registers for notification of an updated publisher hierarchy
structure.
|
void |
registerForChangedPublisherHierarchyForAncestors(Id publisherId)
Registers for notification of an updated publisher hierarchy
structure.
|
void |
registerForChangedPublisherHierarchyForDescendants(Id publisherId)
Registers for notification of an updated publisher hierarchy
structure.
|
void |
registerForChangedPublishers()
Registers for notification of updated publishers.
|
void |
registerForDeletedPublisher(Id publisherId)
Registers for notification of a deleted publisher.
|
void |
registerForDeletedPublishers()
Registers for notification of deleted publishers.
|
void |
registerForNewPublishers()
Register for notifications of new publishers.
|
void |
reliablePublisherNotifications()
Reliable notifications are desired.
|
void |
unreliablePublisherNotifications()
Unreliable notifications are desired.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
boolean canRegisterForPublisherNotifications()
Publisher
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. false
if notification methods are not
authorized, true
otherwisemandatory
- This method must be implemented. void reliablePublisherNotifications()
acknowledgePublisherNotification()
.mandatory
- This method is must be implemented. void unreliablePublisherNotifications()
mandatory
- This method is must be implemented. void acknowledgePublisherNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
notificationId
- the Id
of the notificationOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewPublishers() throws OperationFailedException, PermissionDeniedException
PublisherReceiver.newPublishers()
is invoked when a new
Publisher
is created.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPublishers() throws OperationFailedException, PermissionDeniedException
PublisherReceiver.changedPublishers()
is invoked when a
publisher is changed.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPublisher(Id publisherId) throws OperationFailedException, PermissionDeniedException
PublisherReceiver.changedPublishers()
is invoked when the
specified publisher is changed.publisherId
- the Id
of the Publisher
to monitorNullArgumentException
- publisherId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPublishers() throws OperationFailedException, PermissionDeniedException
PublisherReceiver.deletedPublishers()
is invoked when a
publisher is deleted.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedPublisher(Id publisherId) throws OperationFailedException, PermissionDeniedException
PublisherReceiver.deletedPublishers()
is invoked when the
specified publisher is deleted.publisherId
- the Id
of the Publisher
to monitorNullArgumentException
- publisherId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPublisherHierarchy() throws OperationFailedException, PermissionDeniedException
PublishergReceiver.changedChildOfPublishers()
is invoked when a node experiences a change in its children.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPublisherHierarchyForAncestors(Id publisherId) throws OperationFailedException, PermissionDeniedException
PublisherReceiver.changedChildOfPublishers()
is invoked when the specified node or any of its ancestors experiences
a change in its children.publisherId
- the Id
of the Publisher
node to monitorNullArgumentException
- publisherId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedPublisherHierarchyForDescendants(Id publisherId) throws OperationFailedException, PermissionDeniedException
PublisherReceiver.changedChildOfPublishers()
is invoked when the specified node or any of its descendants
experiences a change in its children.publisherId
- the Id
of the Publisher
node to monitorNullArgumentException
- publisherId
is
null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.