OSID Logo
OSID Specifications
offering package
Version 3.1.0
Interfaceosid.offering.CanonicalUnitCatalogueAssignmentSession
Implementsosid.OsidSession
Used Byosid.offering.OfferingManager
osid.offering.OfferingProxyManager
Description

This session provides methods to re-assign CanonicalUnits to Catalogues. A CanonicalUnit may map to multiple Catalogues and removing the last reference to a CanonicalUnit is the equivalent of deleting it. Each Catalogue may have its own authorizations governing who is allowed to operate on it.

Adding a reference of a CanonicalUnit to another Catalogue is not a copy operation (eg: does not change its Id).

MethodcanAssignCanonicalUnits
Description

Tests if this user can alter canonical unit/catalogue 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
Compliancemandatory This method must be implemented.
MethodcanAssignCanonicalUnitsToCatalogue
Description

Tests if this user can alter canonical unit/catalogue 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 assignment operations to unauthorized users.

Parametersosid.id.IdcatalogueId the Id of the Catalogue
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT catalogueId is null
Compliancemandatory This method must be implemented.
MethodgetAssignableCatalogueIds
Description

Gets a list of catalogues including and under the given catalogue node in which any canonical unit can be assigned.

Parametersosid.id.IdcatalogueId the Id of the Catalogue
Returnosid.id.IdList list of assignable catalogue Ids
ErrorsNULL_ARGUMENT catalogueId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodgetAssignableCatalogueIdsForCanonicalUnit
Description

Gets a list of catalogues including and under the given catalogue node in which a specific canonical unit can be assigned.

Parametersosid.id.IdcatalogueId the Id of the Catalogue
osid.id.IdcanonicalUnitId the Id of the CanonicalUnit
Returnosid.id.IdList list of assignable catalogue Ids
ErrorsNULL_ARGUMENT catalogueId or canonicalUnitId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignCanonicalUnitToCatalogue
Description

Adds an existing CanonicalUnit to a Catalogue.

Parametersosid.id.IdcanonicalUnitId the Id of the CanonicalUnit
osid.id.IdcatalogueId the Id of the Catalogue
ErrorsALREADY_EXISTS canonicalUnitId already assigned to catalogueId
NOT_FOUND canonicalUnitId or catalogueId not found
NULL_ARGUMENT canonicalUnitId or catalogueId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignCanonicalUnitFromCatalogue
Description

Removes a CanonicalUnit from a Catalogue.

Parametersosid.id.IdcanonicalUnitId the Id of the CanonicalUnit
osid.id.IdcatalogueId the Id of the Catalogue
ErrorsNOT_FOUND canonicalUnitId or catalogueId not found or canonicalUnitId not mapped to catalogueId
NULL_ARGUMENT canonicalUnitId or catalogueId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignCanonicalUnitToCatalogue
Description

Moves a CanonicalUnit from one Catalogue to another. Mappings to other Catalogues are unaffected.

Parametersosid.id.IdcanonicalUnitId the Id of the CanonicalUnit
osid.id.IdfromCatalogueId the Id of the current Catalogue
osid.id.IdtoCatalogueId the Id of the destination Catalogue
ErrorsALREADY_EXISTS canonicalUnitId already assigned to toCatalogueId
NOT_FOUND canonicalUnitId, fromCatalogueId, or toCatalogueId not found or canonicalUnitId not mapped to fromCatalogueId
NULL_ARGUMENT canonicalUnitId, fromCatalogueId, or toCatalogueId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.