OSID Logo
OSID Specifications
resource package
Version 3.1.0
Interfaceosid.resource.ResourceRelationshipNotificationSession
Implementsosid.OsidSession
Used Byosid.resource.ResourceManager
osid.resource.ResourceProxyManager
Description

This session defines methods to receive asynchronous notifications on adds/changes to resource relationships. 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 views defined in this session correspond to the views in the ResourceRelationshipLookupSession.

MethodgetBinId
Description

Gets the Bin Id associated with this session.

Returnosid.id.Id the Bin Id associated with this session
Compliancemandatory This method must be implemented.
MethodgetBin
Description

Gets the Bin associated with this session.

Returnosid.resource.Bin the bin
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodcanRegisterForResourceRelationshipNotifications
Description

Tests if this user can register for ResourceRelationship 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
Compliancemandatory This method must be implemented.
MethoduseFederatedBinView
Description

Federates the view for methods in this session. A federated view will include notifications for relationships in bins which are children of this bin in the bin hierarchy.

Compliancemandatory This method is must be implemented.
MethoduseIsolatedBinView
Description

Isolates the view for methods in this session. An isolated view restricts notifications for relationships in this bin only.

Compliancemandatory This method is must be implemented.
MethodreliableResourceRelationshipNotifications
Description

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

Compliancemandatory This method is must be implemented.
MethodunreliableResourceRelationshipNotifications
Description

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

Compliancemandatory This method is must be implemented.
MethodacknowledgeResourceRelationshipNotification
Description

Acknowledge a resource relationship notification.

Parametersosid.id.IdnotificationId the Id of the notification
ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForNewResourceRelationships
Description

Register for notifications of new relationship. ResourceRelationshipReceiver.newResourceRelationships() is invoked when a new relationship is created.

ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForNewResourceRelationshipsByGenusType
Description

Register for notifications of new relationships of the given genus type. ResourceRelationshipReceiver.newResourceRelationships() is invoked when a new relationship is created.

Parametersosid.type.TyperesourceRelationshipGenusType the rsource relationship genus type
ErrorsNULL_ARGUMENT resourceRelationshipGenusType is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForNewResourceRelationshipsForSourceResource
Description

Register for notifications of new relationships from the given resource. ResourceRelationshipReceiver.newResourceRelationships() is invoked when a new relationship is created.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForNewResourceRelationshipsForDestinationResource
Description

Register for notifications of new relationships to the given resource. ResourceRelationshipReceiver.newResourceRelationships() is invoked when a new relationship is created.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForChangedResourceRelationships
Description

Registers for notification of updated relationships. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when a relationship is changed.

ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForChangedResourceRelationshipsByGenusType
Description

Register for notifications of changed relationshipsof the given genus type. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when a relationship is changed.

Parametersosid.type.TyperesourceRelationshipGenusType the rsource relationship genus type
ErrorsNULL_ARGUMENT resourceRelationshipGenusType is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForChangedResourceRelationshipsForSourceResource
Description

Register for notifications of changed relationships from the given resource. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when a relationship is changed.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForChangedResourceRelationshipsForDestinationResource
Description

Register for notifications of changed relationships to the given resource. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when a relationship is changed.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForChangedResourceRelationship
Description

Registers for notification of an updated relationship. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when the specified relationship is changed.

Parametersosid.id.IdresourceRelationshipId the Id of the ResourceRelationship to monitor
ErrorsNULL_ARGUMENT resourceRelationshipId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForDeletedResourceRelationships
Description

Registers for notification of deleted relationships. ResourceRelationshipReceiver.deletedResourceRelationships() is invoked when a relationship is deleted.

ErrorsOPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForDeletedResourceRelationshipsByGenusType
Description

Register for notifications of deleted relationships of the given genus type. ResourceRelationshipReceiver.deletedResourceRelationships() is invoked when a relationship is deleted.

Parametersosid.type.TyperesourceRelationshipGenusType the rsource relationship genus type
ErrorsNULL_ARGUMENT resourceRelationshipGenusType is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForDeletedResourceRelationshipsForSourceResource
Description

Register for notifications of deleted relationships from the given resource. ResourceRelationshipReceiver.deletedResourceRelationships() is invoked when a relationship is deleted.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceRelationshipId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForDeletedResourceRelationshipsForDestinationResource
Description

Register for notifications of deleted relationships to the given resource. ResourceRelationshipReceiver.deletedResourceRelationships() is invoked when a relationship is deleted.

Parametersosid.id.IdresourceId the Id of the Resource to monitor
ErrorsNULL_ARGUMENT resourceRelationshipId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodregisterForDeletedResourceRelationship
Description

Registers for notification of a deleted relationship. ResourceRelationshipReceiver.changedResourceRelationships() is invoked when the specified relationship is deleted.

Parametersosid.id.IdresourceRelationshipId the Id of the ResourceRelationship to monitor
ErrorsNULL_ARGUMENT resourceRelationshipId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.