Interface InstallationPackageNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive asynchronous notifications on
adds/changes to InstallationPackage objects. 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
InstallationPackageLookupSession.
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeInstallationPackageNotification(Id notificationId) Acknowledge a package notification.booleanTests if this user can register forInstallationPackagenotifications.getDepot()Gets theDepotassociated with this session.Gets theDepotIdassociated with this session.voidregisterForChangedInstallationPackage(Id installationPackageId) Registers for notification of an updated package.voidRegisters for notification of updated packages.voidregisterForDeletedInstallationPackage(Id installationPackageId) Registers for notification of a deleted package.voidRegisters for notification of deleted packages.voidRegister for notifications of new packages.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
-
getDepotId
Id getDepotId()Gets theDepotIdassociated with this session.- Returns:
- the
Depot Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getDepot
Gets theDepotassociated with this session.- Returns:
- the
Depotassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForInstallationPackageNotifications
boolean canRegisterForInstallationPackageNotifications()Tests if this user can register forInstallationPackagenotifications. 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.
-
useFederatedDepotView
void useFederatedDepotView()Federates the view for methods in this session. A federated view will include notifications for packages in depots which are children of this depot in the depot hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedDepotView
void useIsolatedDepotView()Isolates the view for methods in this session. An isolated view restricts notifications to this depot only.- Compliance:
mandatory- This method is must be implemented.
-
reliableInstallationPackageNotifications
void reliableInstallationPackageNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeInstallationPackageNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableInstallationPackageNotifications
void unreliableInstallationPackageNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeInstallationPackageNotification
void acknowledgeInstallationPackageNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a package notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewInstallationPackages
void registerForNewInstallationPackages() throws OperationFailedException, PermissionDeniedExceptionRegister for notifications of new packages.InstallationPackageReceiver.newInstallationPackages()is invoked when a new package is created.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedInstallationPackages
void registerForChangedInstallationPackages() throws OperationFailedException, PermissionDeniedExceptionRegisters for notification of updated packages.InstallationPackageReceiver.changedInstallationPackages()is invoked when a package is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedInstallationPackage
void registerForChangedInstallationPackage(Id installationPackageId) throws OperationFailedException, PermissionDeniedException Registers for notification of an updated package.InstallationPackageReceiver.changedInstallationPackages()is invoked when the specified package is changed.- Parameters:
installationPackageId- theIdof theInstallationPackageto monitor- Throws:
NullArgumentException-installationPackageId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedInstallationPackages
void registerForDeletedInstallationPackages() throws OperationFailedException, PermissionDeniedExceptionRegisters for notification of deleted packages.InstallationPackageReceiver.deletedInstallationPackages()is invoked when a package is removed from this depot.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedInstallationPackage
void registerForDeletedInstallationPackage(Id installationPackageId) throws OperationFailedException, PermissionDeniedException Registers for notification of a deleted package.InstallationPackageReceiver.deletedInstallationPackages()is invoked when the specified package is removed from this depot.- Parameters:
installationPackageId- theIdof theInstallationPackageto monitor- Throws:
NullArgumentException-installationPackageId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-