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

This session provides methods for retrieving Hold relationships.

This session defines views that offer differing behaviors when retrieving multiple objects.

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete set or is an error condition
  • isolated oubliette view: All hold methods in this session operate, retrieve and pertain to holds defined explicitly in the current oubliette. Using an isolated view is useful for managing Holds with the HoldAdminSession.
  • federated oubliette view: All hold methods in this session operate, retrieve and pertain to all holds defined in this oubliette and any other holds implicitly available in this oubliette through oubliette inheritence.
  • effective hold view: All hold lookup methods return holds where the current date falls in between the effective dates inclusive.
  • any effective hold view: Holds of any effective date are returned from methods.

Generally, the comparative view should be used for most applications as it permits operation even if there is data that cannot be accessed. The methods useFederatedOublietteView() and useIsolatedOublietteView() behave as a radio group and one should be selected before invoking any lookup methods.

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

Tests if this user can perform Hold lookups. 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 lookup operations to unauthorized users.

Returnboolean false if lookup methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseComparativeHoldView
Description

The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.

CompliancemandatoryThis method is must be implemented.
MethodusePlenaryHoldView
Description

A complete view of the Hold returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.

CompliancemandatoryThis method is 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 lookups to this oubliette only.

CompliancemandatoryThis method is must be implemented.
MethoduseEffectiveHoldView
Description

Only holds whose effective dates are current are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethoduseAnyEffectiveHoldView
Description

All holds of any effective dates are returned by methods in this session.

CompliancemandatoryThis method is must be implemented.
MethodgetHold
Description

Gets the Hold specified by its Id.

In plenary mode, the exact Id is found or a NOT_FOUND results. Otherwise, the returned Hold may have a different Id than requested, such as the case where a duplicate Id was assigned to a Hold and retained for compatibility.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdholdId Id of the Hold
Returnosid.hold.Holdthe hold
ErrorsNOT_FOUND holdId not found
NULL_ARGUMENT holdId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method is must be implemented.
MethodgetHoldsByIds
Description

Gets a HoldList corresponding to the given IdList.

In plenary mode, the returned list contains all of the holds specified in the Id list, in the order of the list, including duplicates, or an error results if an Id in the supplied list is not found or inaccessible. Otherwise, inaccessible Holds may be omitted from the list and may present the elements in any order including returning a unique set.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdListholdIdsthe list of Ids to retrieve
Returnosid.hold.HoldListthe returned Hold list
ErrorsNOT_FOUNDan Id was not found
NULL_ARGUMENT holdIds is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsByGenusType
Description

Gets a HoldList corresponding to the given hold genus Type which does not include holds of genus types derived from the specified Type.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.type.TypeholdGenusTypea hold genus type
Returnosid.hold.HoldListthe returned Hold list
ErrorsNULL_ARGUMENT holdGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsByParentGenusType
Description

Gets a HoldList corresponding to the given hold genus Type and include any additional holds with genus types derived from the specified Type.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.type.TypeholdGenusTypea hold genus type
Returnosid.hold.HoldListthe returned Hold list
ErrorsNULL_ARGUMENT holdGenusType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsByRecordType
Description

Gets a HoldList containing the given hold record Type.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.type.TypeholdRecordTypea hold record type
Returnosid.hold.HoldListthe returned Hold list
ErrorsNULL_ARGUMENT holdRecordType is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsOnDate
Description

Gets a list of holds for a resource, including any holds for agents related to the resource, and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned Hold list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT from or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForResource
Description

Gets a list of holds for a resource including any holds for agents related to the resource.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdresourceIda resource Id
Returnosid.hold.HoldListthe returned Hold list
ErrorsNULL_ARGUMENT resourceId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForResourceOnDate
Description

Gets a list of holds for a resource, including any holds for agents related to the resource, and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdresourceIda resource Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned Hold list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT resourceId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForAgent
Description

Gets a list of holds for an agent.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdagentIdan agent Id
Returnosid.hold.HoldListthe returned Hold list
ErrorsNULL_ARGUMENT agentId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForAgentOnDate
Description

Gets a list of holds for an agent and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session. In both cases, the order of the set is by the start of the effective date.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdagentIdan agent Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned Hold list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT agentId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForIssue
Description

Gets a list of holds for an issue.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdissueIdan issue Id
Returnosid.hold.HoldListthe returned C ommission list
ErrorsNULL_ARGUMENT issueid is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForIssueOnDate
Description

Gets a list of holds for an issue and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdissueIdan issue Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned C ommission list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT issueId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForResourceAndIssue
Description

Gets a list of holds for a resource and issue including any holds for agents related to the resource.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdresourceIda resource Id
osid.id.IdissueIdan issue Id
Returnosid.hold.HoldListthe returned C ommission list
ErrorsNULL_ARGUMENT resourceId or issueid is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForResourceAndIssueOnDate
Description

Gets a list of holds for a resource, including any holds for agents related to the resource, and issue and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdresourceIda resource Id
osid.id.IdissueIdan issue Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned C ommission list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT resourceId, issueId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForAgentAndIssue
Description

Gets a list of holds for an agent.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdagentIdan agent Id
osid.id.IdissueIdan issue Id
Returnosid.hold.HoldListthe returned C ommission list
ErrorsNULL_ARGUMENT agentId or issueid is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHoldsForAgentAndIssueOnDate
Description

Gets a list of holds for an agent and issue and effective during the entire given date range inclusive but not confined to the date range.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Parametersosid.id.IdagentIdan agent Id
osid.id.IdissueIdan issue Id
osid.calendaring.DateTimefromstart of date range
osid.calendaring.DateTimetoend of date range
Returnosid.hold.HoldListthe returned C ommission list
ErrorsINVALID_ARGUMENT from is greater than to
NULL_ARGUMENT agentId, issueId, from, or to is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodgetHolds
Description

Gets all Holds.

In plenary mode, the returned list contains all known holds or an error results. Otherwise, the returned list may contain only those holds that are accessible through this session.

In effective mode, holds are returned that are currently effective. In any effective mode, effective holds and those currently expired are returned.

Returnosid.hold.HoldLista list of Holds
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.