public interface RelationshipEnablerNotificationSession extends OsidSession
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.
Modifier and Type | Method and Description |
---|---|
void |
acknowledgeRelationshipEnablerNotification(Id notificationId)
Acknowledge a relationship enabler notification.
|
boolean |
canRegisterForRelationshipEnablerNotifications()
Tests if this user can register for
RelationshipEnabler
notifications. |
Family |
getFamily()
Gets the
Family associated with this session. |
Id |
getFamilyId()
Gets the
Family Id associated with this
session. |
void |
registerForChangedRelationshipEnabler(Id relationshipEnablerId)
Registers for notification of an updated relationship enabler.
|
void |
registerForChangedRelationshipEnablers()
Registers for notification of updated relationship enabelrs.
|
void |
registerForDeletedRelationshipEnabler(Id relationshipEnablerId)
Registers for notification of a deleted relationship enabler.
|
void |
registerForDeletedRelationshipEnablers()
Registers for notification of deleted relationship enablers.
|
void |
registerForNewRelationshipEnablers()
Register for notifications of new relationship enablers.
|
void |
reliableRelationshipEnablerNotifications()
Reliable notifications are desired.
|
void |
unreliableRelationshipEnablerNotifications()
Unreliable notifications are desired.
|
void |
useFederatedFamilyView()
Federates the view for methods in this session.
|
void |
useIsolatedFamilyView()
Isolates the view for methods in this session.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getFamilyId()
Family
Id
associated with this
session. Family Id
associated with this sessionmandatory
- This method must be implemented. Family getFamily() throws OperationFailedException, PermissionDeniedException
Family
associated with this session.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canRegisterForRelationshipEnablerNotifications()
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. false
if notification methods are not
authorized, true
otherwisemandatory
- This method must be implemented. void useFederatedFamilyView()
mandatory
- This method is must be implemented. void useIsolatedFamilyView()
mandatory
- This method is must be implemented. void reliableRelationshipEnablerNotifications()
acknowledgeRelationshipEnablerNotification()
.mandatory
- This method is must be implemented. void unreliableRelationshipEnablerNotifications()
mandatory
- This method is must be implemented. void acknowledgeRelationshipEnablerNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
notificationId
- the Id
of the notificationOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewRelationshipEnablers() throws OperationFailedException, PermissionDeniedException
RelationshipEnablerReceiver.newRelationshipEnablers()
is
invoked when a new RelationshipEnabler
appears in this
family.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedRelationshipEnablers() throws OperationFailedException, PermissionDeniedException
RelationshipEnablerReceiver.changedRelationshipEnablers()
is
invoked when a relationship enabler in this family is changed.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedRelationshipEnabler(Id relationshipEnablerId) throws OperationFailedException, PermissionDeniedException
ProvisionableReceiver.changedRelationshipEnablers()
is invoked
when the specified relationship enabler in this family is changed.relationshipEnablerId
- the Id
of the
RelationshipEnabler
to monitorNullArgumentException
- relationshipEnablerId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedRelationshipEnablers() throws OperationFailedException, PermissionDeniedException
RelationshipEnablerReceiver.deletedRelationshipEnablers()
is
invoked when a relationship enabler is deleted or removed from this
family.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedRelationshipEnabler(Id relationshipEnablerId) throws OperationFailedException, PermissionDeniedException
RelationshipEnablerReceiver.deletedRelationshipEnablers()
is
invoked when the specified relationship enabler is deleted or removed
from this family.relationshipEnablerId
- the Id
of the
RelationshipEnabler
to monitorNullArgumentException
- relationshipEnablerId
is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.