OSID Logo
OSID Specifications
relationship rules package
Version 3.0.0
Release Candidate Preview
Interfaceosid.relationship.rules.RelationshipEnablerNotificationSession
Implementsosid.OsidSession
Description

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

MethodgetFamilyId
Description

Gets the Family Id associated with this session.

Returnosid.id.Idthe Family Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetFamily
Description

Gets the Family associated with this session.

Returnosid.relationship.Familythe family
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForRelationshipEnablerNotifications
Description

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

Federates the view for methods in this session. A federated view will include relationship enablers in families which are children of this family in the family hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedFamilyView
Description

Isolates the view for methods in this session. An isolated view restricts lookups to this family only.

CompliancemandatoryThis method is must be implemented.
MethodreliableRelationshipEnablerNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodunreliableRelationshipEnablerNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodacknowledgeRelationshipEnablerNotification
Description

Acknowledge a relationship enabler notification.

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

Register for notifications of new relationship enablers. RelationshipEnablerReceiver.newRelationshipEnablers() is invoked when a new RelationshipEnabler appears in this family.

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

Registers for notification of updated relationship enabelrs. RelationshipEnablerReceiver.changedRelationshipEnablers() is invoked when a relationship enabler in this family is changed.

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

Registers for notification of an updated relationship enabler. ProvisionableReceiver.changedRelationshipEnablers() is invoked when the specified relationship enabler in this family is changed.

Parametersosid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler to monitor
ErrorsNULL_ARGUMENT relationshipEnablerId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedRelationshipEnablers
Description

Registers for notification of deleted relationship enablers. RelationshipEnablerReceiver.deletedRelationshipEnablers() is invoked when a relationship enabler is deleted or removed from this family.

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

Registers for notification of a deleted relationship enabler. RelationshipEnablerReceiver.deletedRelationshipEnablers() is invoked when the specified relationship enabler is deleted or removed from this family.

Parametersosid.id.IdrelationshipEnablerIdthe Id of the RelationshipEnabler to monitor
ErrorsNULL_ARGUMENT relationshipEnablerId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.