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

This session provides methods to apply HoldEnablers to Holds. A Hold with multiple HoldEnablers means any positive rule evaluation across the enablers result in an effective Hold.

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.
MethodcanAssignHoldEnablers
Description

Tests if this user can alter hold enabler/hold mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 lookup operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodassignHoldEnablerToHold
Description

Adds an existing HoldEnabler to a Hold.

Parametersosid.id.IdholdEnablerIdthe Id of the HoldEnabler
osid.id.IdholdIdthe Id of the Hold
ErrorsALREADY_EXISTS holdEnablerId is already applied to holdId
NOT_FOUND holdEnablerId or holdId not found
NULL_ARGUMENT holdEnablerId or holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignHoldEnablerFromHold
Description

Removes a HoldEnabler from a Hold.

Parametersosid.id.IdholdEnablerIdthe Id of the HoldEnabler
osid.id.IdholdIdthe Id of the Hold
ErrorsNOT_FOUND holdEnablerId or holdId not found or holdEnablerId is not applied to holdId
NULL_ARGUMENT holdEnablerId or holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanSequenceHoldEnablers
Description

Tests if this user can order HoldEnablers. A return of true does not guarantee successful authorization. A return of false indicates that it is known sequencing operations will result in a PERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer sequencing operations to an unauthorized user.

Returnboolean false if HoldEnabler ordering is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodmoveHoldEnablerAhead
Description

Reorders hold enablers for a hold by moving the specified hold enabler in front of a reference hold enabler.

Parametersosid.id.IdholdEnablerIdthe Id of a HoldEnabler
osid.id.IdholdIdthe Id of a Hold
osid.id.IdreferenceIdthe reference hold enabler Id
ErrorsNOT_FOUND holdEnablerId, holdId, or referenceId not found or, holdEnablerId or referenceId not related to holdId
NULL_ARGUMENT holdEnablerId, holdId, or referenceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodmoveHoldEnablerBehind
Description

Reorders hold enablers for a hold by moving the specified hold enabler behind a reference hold enabler.

Parametersosid.id.IdholdEnablerIdthe Id of a HoldEnabler
osid.id.IdholdIdthe Id of a Hold
osid.id.IdreferenceIdthe reference hold enabler Id
ErrorsNOT_FOUND holdEnablerId, holdId, or referenceId not found or, holdEnablerId or referenceId not related to holdId
NULL_ARGUMENT holdEnablerId, holdId, or referenceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodorderHoldEnablers
Description

Reorders a set of hold enablers for a hold.

Parametersosid.id.Id[]holdEnablerIdthe Ids for a set of HoldEnablers
osid.id.IdholdIdthe Id of a Hold
ErrorsNOT_FOUND holdId not found or, a holdnEnablerId not related to holdId
NULL_ARGUMENT holdEnablerIds or holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.