OSID Logo
OSID Specifications
hold package
Version 3.0.0
Release Candidate Preview
Interfaceosid.hold.HoldNotificationSession
Implementsosid.OsidSession
Description

This session defines methods to receive notifications on adds/changes to Hold objects in this Oubliette. This also includes existing holds that may appear or disappear due to changes in the Oubliette 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 HoldLookupSession.

MethodgetOublietteId
Description

Gets the Oubliette Id associated with this session.

Returnosid.id.Idthe Oubliette Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetOubliette
Description

Gets the Oubliette associated with this session.

Returnosid.hold.Oubliettethe oubliette
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForHoldNotifications
Description

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

Federates the view for methods in this session. A federated view will include holds in oubliettes which are children of this oubliette in the oubliette hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedOublietteView
Description

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

CompliancemandatoryThis method is must be implemented.
MethodreliableHoldNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodunreliableHoldNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodacknowledgeHoldNotification
Description

Acknowledge a hold notification.

Parametersosid.id.IdnotificationIdthe Id of the notification
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForNewHolds
Description

Register for notifications of new holds. HoldReceiver.newHolds() is invoked when a new Hold appears in this oubliette.

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

Register for notifications of new holds for the given resource Id including any holds for agents related to the resource. HoldReceiver.newHolds() is invoked when a new Hold is created.

Parametersosid.id.IdresourceIdthe Id of the resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForNewHoldsForIssue
Description

Register for notifications of new holds for the given issue Id. HoldReceiver.newHolds() is invoked when a new Hold is created.

Parametersosid.id.IdissueIdthe Id of the issue to monitor
ErrorsNULL_ARGUMENT issueid is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedHolds
Description

Registers for notification of updated holds. HoldReceiver.changedHolds() is invoked when a hold in this oubliette is changed.

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

Register for notifications of updated holds for the given resource Id including any holds for agents related to the resource. HoldReceiver.changedHolds() is invoked when a Hold in this oubliette is changed.

Parametersosid.id.IdresourceIdthe Id of the resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedHoldsForIssue
Description

Register for notifications of updated holds for the given issue Id. HoldReceiver.changedHolds() is invoked when a Hold in this oubliette is changed.

Parametersosid.id.IdissueIdthe Id of the issue to monitor
ErrorsNULL_ARGUMENT issueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedHold
Description

Registers for notification of an updated hold. HoldReceiver.changedHolds() is invoked when the specified hold in this oubliette is changed.

Parametersosid.id.IdholdIdthe Id of the Hold to monitor
ErrorsNOT_FOUNDa hold was not found in this oubliette identified by the given Id
NULL_ARGUMENT holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedHolds
Description

Registers for notification of deleted holds. HoldReceiver.deletedHolds() is invoked when a hold is deleted or removed from this oubliette.

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

Register for notifications of deleted holds for the given resource Id including any holds for agents related to the resource. HoldReceiver.deletedHolds() is invoked when a Hold is deleted or removed from this oubliette.

Parametersosid.id.IdresourceIdthe Id of the resource to monitor
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedHoldsForIssue
Description

Register for notifications of deleted holds for the given issue Id. HoldReceiver.deletedHolds() is invoked when a Hold is deleted or removed from this oubliette.

Parametersosid.id.IdissueIdthe Id of the issue to monitor
ErrorsNULL_ARGUMENT issueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedHold
Description

Registers for notification of a deleted hold. HoldReceiver.deletedHolds() is invoked when the specified hold is deleted or removed from this oubliette.

Parametersosid.id.IdholdIdthe Id of the Hold to monitor
ErrorsNOT_FOUNDa hold was not found identified by the given Id
NULL_ARGUMENT holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.