OSID Logo
OSID Specifications
subscription package
Version 3.0.0
Release Candidate Preview
Interfaceosid.subscription.PublisherNotificationSession
Implementsosid.OsidSession
Description

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.

MethodcanRegisterForPublisherNotifications
Description

Tests if this user can register for 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.

Returnboolean false if notification methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodreliablePublisherNotifications
Description

Reliable notifications are desired. In reliable mode, notifications are to be acknowledged using acknowledgePublisherNotification() .

CompliancemandatoryThis method is must be implemented.
MethodunreliablePublisherNotifications
Description

Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.

CompliancemandatoryThis method is must be implemented.
MethodacknowledgePublisherNotification
Description

Acknowledge a publisher notification.

Parametersosid.id.IdnotificationIdthe Id of the notification
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForNewPublishers
Description

Register for notifications of new publishers. PublisherReceiver.newPublishers() is invoked when a new Publisher is created.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedPublishers
Description

Registers for notification of updated publishers. PublisherReceiver.changedPublishers() is invoked when a publisher is changed.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedPublisher
Description

Registers for notification of an updated publisher. PublisherReceiver.changedPublishers() is invoked when the specified publisher is changed.

Parametersosid.id.IdpublisherIdthe Id of the Publisher to monitor
ErrorsNULL_ARGUMENT publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedPublishers
Description

Registers for notification of deleted publishers. PublisherReceiver.deletedPublishers() is invoked when a publisher is deleted.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedPublisher
Description

Registers for notification of a deleted publisher. PublisherReceiver.deletedPublishers() is invoked when the specified publisher is deleted.

Parametersosid.id.IdpublisherIdthe Id of the Publisher to monitor
ErrorsNULL_ARGUMENT publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedPublisherHierarchy
Description

Registers for notification of an updated publisher hierarchy structure. PublishergReceiver.changedChildOfPublishers() is invoked when a node experiences a change in its children.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedPublisherHierarchyForAncestors
Description

Registers for notification of an updated publisher hierarchy structure. PublisherReceiver.changedChildOfPublishers() is invoked when the specified node or any of its ancestors experiences a change in its children.

Parametersosid.id.IdpublisherIdthe Id of the Publisher node to monitor
ErrorsNULL_ARGUMENT publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedPublisherHierarchyForDescendants
Description

Registers for notification of an updated publisher hierarchy structure. PublisherReceiver.changedChildOfPublishers() is invoked when the specified node or any of its descendants experiences a change in its children.

Parametersosid.id.IdpublisherIdthe Id of the Publisher node to monitor
ErrorsNULL_ARGUMENT publisherId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.