OSID Logo
OSID Specifications
offering rules package
Version 3.1.0
Interfaceosid.offering.rules.CanonicalUnitProcessorCatalogueAssignmentSession
Implementsosid.OsidSession
Used Byosid.offering.rules.OfferingRulesManager
osid.offering.rules.OfferingRulesProxyManager
Description

This session provides methods to re-assign CanonicalUnitProcessor to Catalogue mappings. A CanonicalUnitProcessor may appear in multiple Catalogue objects and removing the last reference to a CanonicalUnitProcessor 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 CanonicalUnitProcessor to another Catalogue is not a copy operation (eg: does not change its Id).

MethodcanAssignCanonicalUnitProcessors
Description

Tests if this user can alter canonical unit processor/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.
MethodcanAssignCanonicalUnitProcessorsToCatalogue
Description

Tests if this user can alter canonical unit processor/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.

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 processor 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.
MethodgetAssignableCatalogueIdsForCanonicalUnitProcessor
Description

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

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

Adds an existing CanonicalUnitProcessor to an Catalogue.

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

Removes a CanonicalUnitProcessor from a Catalogue.

Parametersosid.id.IdcanonicalUnitProcessorId the Id of the CanonicalUnitProcessor
osid.id.IdcatalogueId the Id of the Catalogue
ErrorsNOT_FOUND canonicalUnitProcessorId or catalogueId not found or canonicalUnitProcessorId not assigned to catalogueId
NULL_ARGUMENT canonicalUnitProcessorId or catalogueId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignCanonicalUnitProcessorToCatalogue
Description

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

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