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

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

MethodcanAssignParticipants
Description

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

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

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

Parametersosid.id.IdcatalogueIdthe Id of the Catalogue
osid.id.IdparticipantIdthe Id of the Participant
Returnosid.id.IdListlist of assignable catalogue Ids
ErrorsNULL_ARGUMENTcatalogueId or participantId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignParticipantToCatalogue
Description

Adds an existing Participant to a Catalogue .

Parametersosid.id.IdparticipantIdthe Id of the Participant
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsALREADY_EXISTSparticipantId already assigned to catalogueId
NOT_FOUNDparticipantId or catalogueId not found
NULL_ARGUMENTparticipantId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignParticipantFromCatalogue
Description

Removes a Participant from a Catalogue .

Parametersosid.id.IdparticipantIdthe Id of the Participant
osid.id.IdcatalogueIdthe Id of the Catalogue
ErrorsNOT_FOUNDparticipantId or catalogueId not found or participantId not mapped to catalogueId
NULL_ARGUMENTparticipantId or catalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignParticipantToCatalogue
Description

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

Parametersosid.id.IdparticipantIdthe Id of the Participant
osid.id.IdfromCatalogueIdthe Id of the current Catalogue
osid.id.IdtoCatalogueIdthe Id of the destination Catalogue
ErrorsALREADY_EXISTSparticipantId already assigned to toCatalogueId
NOT_FOUNDparticipantId, fromCatalogueId , or toCatalogueId not found or participantId not mapped to fromCatalogueId
NULL_ARGUMENTparticipantId, fromCatalogueId , or toCatalogueId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.