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

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

MethodcanAssignOfferings
Description

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

Returnbooleanfalse if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignOfferingsToCatalogue
Description

Tests if this user can alter offering/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.IdcatalogueIdthe Id of the Catalogue
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTcatalogueId 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 can be assigned.

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

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

Parametersosid.id.IdcatalogueIdthe Id of the Catalogue
osid.id.IdofferingIdthe Id of the Offering
Returnosid.id.IdListlist of assignable catalogue Ids
ErrorsNULL_ARGUMENTcatalogueId or offeringId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignOfferingToCatalogue
Description

Adds an existing Offering to a Catalogue .

Parametersosid.id.IdofferingIdthe Id of the Offering
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsALREADY_EXISTSofferingId already assigned to catalogueId
NOT_FOUNDofferingId or catalogueId not found
NULL_ARGUMENTofferingId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignOfferingFromCatalogue
Description

Removes an Offering from a Catalogue .

Parametersosid.id.IdofferingIdthe Id of the Offering
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsNOT_FOUNDofferingId or catalogueId not found or offeringId not mapped to catalogueId
NULL_ARGUMENTofferingId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignOfferingToCatalogue
Description

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

Parametersosid.id.IdofferingIdthe Id of the Offering
osid.id.IdfromCatalogueIdthe Id of the current Catalogue
osid.id.IdtoCatalogueIdthe Id of the destination Catalogue
ErrorsALREADY_EXISTSofferingId already assigned to toCatalogueId
NOT_FOUNDofferingId, fromCatalogueId , or toCatalogueId not found or offeringId not mapped to fromCatalogueId
NULL_ARGUMENTofferingId, fromCatalogueId , or toCatalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.