OSID Logo
OSID Specifications
offering rules package
Version 3.0.0
Release Candidate Preview
Interfaceosid.offering.rules.OfferingConstrainerCatalogueAssignmentSession
Implementsosid.OsidSession
Description

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

MethodcanAssignOfferingConstrainers
Description

Tests if this user can alter offering constrainer/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
CompliancemandatoryThis method must be implemented.
MethodcanAssignOfferingConstrainersToCatalogue
Description

Tests if this user can alter offering constrainer/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.IdcatalogueIdthe Id of the Catalogue
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT catalogueId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCatalogueIds
Description

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

Parametersosid.id.IdcatalogueIdthe Id of the Catalogue
Returnosid.id.IdListlist of assignable catalogue Ids
ErrorsNULL_ARGUMENT catalogueId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCatalogueIdsForOfferingConstrainer
Description

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

Parametersosid.id.IdcatalogueIdthe Id of the Catalogue
osid.id.IdofferingConstrainerIdthe Id of the OfferingConstrainer
Returnosid.id.IdListlist of assignable catalogue Ids
ErrorsNULL_ARGUMENT catalogueId or offeringConstrainerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignOfferingConstrainerToCatalogue
Description

Adds an existing OfferingConstrainer to a Catalogue.

Parametersosid.id.IdofferingConstrainerIdthe Id of the OfferingConstrainer
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsALREADY_EXISTS offeringConstrainerId already assigned to catalogueId
NOT_FOUND offeringConstrainerId or catalogueId not found
NULL_ARGUMENT offeringConstrainerId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignOfferingConstrainerFromCatalogue
Description

Removes an OfferingConstrainer from a Catalogue.

Parametersosid.id.IdofferingConstrainerIdthe Id of the OfferingConstrainer
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsNOT_FOUND offeringConstrainerId or catalogueId not found or offeringConstrainerId already assigned to catalogueId
NULL_ARGUMENT offeringConstrainerId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignOfferingConstrainerToCatalogue
Description

Moves an OfferingConstrainer from one Catalogue to another. Mappings to other Catalogues are unaffected.

Parametersosid.id.IdofferingConstrainerIdthe Id of the OfferingConstrainer
osid.id.IdfromCatalogueIdthe Id of the current Catalogue
osid.id.IdtoCatalogueIdthe Id of the destination Catalogue
ErrorsNOT_FOUND offeringConstraienrId, fromCatalogueId, or toCatalogueId not found or offeringConstrainerId, not mapped to fromCatalogueId
NULL_ARGUMENT offeringConstrainerId, fromCatalogueId, or toCatalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.