OSID Logo
OSID Specifications
installation package
Version 3.0.0
Release Candidate Preview
Interfaceosid.installation.PackageNotificationSession
Implementsosid.OsidSession
Description

This session defines methods to receive asynchronous notifications on adds/changes to Package 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 PackageLookupSession.

MethodgetDepotId
Description

Gets the Depot Id associated with this session.

Returnosid.id.Idthe Depot Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetDepot
Description

Gets the Depot associated with this session.

Returnosid.installation.Depotthe Depot associated with this session
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForPackageNotifications
Description

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

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.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedDepotView
Description

Isolates the view for methods in this session. An isolated view restricts notifications to this depot only.

CompliancemandatoryThis method is must be implemented.
MethodregisterForNewPackages
Description

Register for notifications of new packages. PackageReceiver.newPackages() is invoked when a new package is created.

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

Registers for notification of updated packages. PackageReceiver.changedPackages() is invoked when a package is changed.

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

Registers for notification of an updated package. PackageReceiver.changedPackages() is invoked when the specified package is changed.

Parametersosid.id.IdpackageIdthe Id of the Package to monitor
ErrorsNULL_ARGUMENT packageId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedPackages
Description

Registers for notification of deleted packages. PackageReceiver.deletedPackages() is invoked when a package is removed from this depot.

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

Registers for notification of a deleted package. PackageReceiver.deletedPackages() is invoked when the specified package is removed from this depot.

Parametersosid.id.IdpackageIdthe Id of the Package to monitor
ErrorsNULL_ARGUMENT packageId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.