Interface ChainNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to Chain objects in this dDstributor . 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
ChainLookupSession .
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeChainNotification(Id notificationId) Acknowledge a chain notification.booleanTests if this user can register forChainnotifications.Gets theAntimatroidassociated with this session.Gets theAntimatroidIdassociated with this session.voidregisterForChangedChain(Id chainId) Registers for notification of an updated chain.voidRegisters for notification of updated chains.voidregisterForDeletedChain(Id chainId) Registers for notification of a deleted chain.voidRegisters for notification of deleted chains.voidRegister for notifications of new chains.voidReliable notifications are desired.voidUnreliable notifications are desired.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getAntimatroidId
Id getAntimatroidId()Gets theAntimatroidIdassociated with this session.- Returns:
- the
Antimatroid Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getAntimatroid
Gets theAntimatroidassociated with this session.- Returns:
- the antimatroid
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForChainNotifications
boolean canRegisterForChainNotifications()Tests if this user can register forChainnotifications. 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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer notification operations.- Returns:
falseif notification methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useFederatedAntimatroidView
void useFederatedAntimatroidView()Federates the view for methods in this session. A federated view will include chains in antimatroids which are children of this antimatroid in the antimatroid hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedAntimatroidView
void useIsolatedAntimatroidView()Isolates the view for methods in this session. An isolated view restricts notifications to this antimatroid only.- Compliance:
mandatory- This method is must be implemented.
-
reliableChainNotifications
void reliableChainNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeChainNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableChainNotifications
void unreliableChainNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeChainNotification
void acknowledgeChainNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a chain notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewChains
Register for notifications of new chains.ChainReceiver.newChains()is invoked when a newChainappears in this antimatroid.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedChains
Registers for notification of updated chains.ChainReceiver.changedChains()is invoked when a chain in this antimatroid is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedChain
Registers for notification of an updated chain.ChainReceiver.changedChains()is invoked when the specified chain in this antimatroid is changed.- Parameters:
chainId- theIdof theChainto monitor- Throws:
NullArgumentException-chainIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedChains
Registers for notification of deleted chains.ChainReceiver.deletedChains()is invoked when a chain is deleted or removed from this antimatroid.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedChain
Registers for notification of a deleted chain.ChainReceiver.deletedChains()is invoked when the specified chain is deleted or removed from this antimatroid.- Parameters:
chainId- theIdof theChainto monitor- Throws:
NullArgumentException-chainIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-