OSID Logo
OSID Specifications
hold package
Version 3.0.0
Release Candidate Preview
Interfaceosid.hold.BlockNotificationSession
Implementsosid.OsidSession
Description

This session defines methods to receive notifications on adds/changes to Block objects in this Oubliette. This also includes existing blocks that may appear or disappear due to changes in the Oubliette 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 BlockLookupSession.

MethodgetOublietteId
Description

Gets the Oubliette Id associated with this session.

Returnosid.id.Idthe Oubliette Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetOubliette
Description

Gets the Oubliette associated with this session.

Returnosid.hold.Oubliettethe oubliette
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForBlockNotifications
Description

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

Federates the view for methods in this session. A federated view will include blocks in oubliettes which are children of this oubliette in the oubliette hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedOublietteView
Description

Isolates the view for methods in this session. An isolated view restricts notifications to this oubliette only.

CompliancemandatoryThis method is must be implemented.
MethodreliableBlockNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodunreliableBlockNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodacknowledgeBlockNotification
Description

Acknowledge a block notification.

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

Register for notifications of new blocks. BlockReceiver.newBlocks() is invoked when a new Block appears in this oubliette.

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

Registers for notification of updated blocks. BlockReceiver.changedBlocks() is invoked when a block in this oubliette is changed.

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

Registers for notification of an updated block. BlockReceiver.changedBlocks() is invoked when the specified block in this oubliette is changed.

Parametersosid.id.IdblockIdthe Id of the Block to monitor
ErrorsNOT_FOUNDa block was not found in this oubliette identified by the given Id
NULL_ARGUMENT blockId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedBlocks
Description

Registers for notification of deleted blocks. BlockReceiver.deletedBlocks() is invoked when a block is deleted or removed from this oubliette.

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

Registers for notification of a deleted block. BlockReceiver.deletedBlocks() is invoked when the specified block is deleted or removed from this oubliette.

Parametersosid.id.IdblockIdthe Id of the Block to monitor
ErrorsNOT_FOUNDa block was not found identified by the given Id
NULL_ARGUMENT blockId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.