OSID Logo
OSID Specifications
provisioning package
Version 3.0.0
Release Candidate Preview
Interfaceosid.provisioning.ProvisionableDistributorAssignmentSession
Implementsosid.OsidSession
Description

This session provides methods to re-assign Provisionables to Distributor mappings. A Provisionable may appear in multiple Distributor objects and removing the last reference to a Provisionable is the equivalent of deleting it. Each Distributor may have its own authorizations governing who is allowed to operate on it.

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

MethodcanAssignProvisionables
Description

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

Returnboolean false if provisionable is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignProvisionablesToDistributor
Description

Tests if this user can alter provisionable/distributor 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.IddistributorIdthe Id of the Distributor
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT distributorId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableDistributorIds
Description

Gets a list of distributors including and under the given distributor node in which any provisionable can be assigned.

Parametersosid.id.IddistributorIdthe Id of the Distributor
Returnosid.id.IdListlist of assignable distributor Ids
ErrorsNULL_ARGUMENT distributorId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableDistributorIdsForProvisionable
Description

Gets a list of distributors including and under the given distributor node in which a specific provisionable can be assigned.

Parametersosid.id.IddistributorIdthe Id of the Distributor
osid.id.IdprovisionableIdthe Id of the Provisionable
Returnosid.id.IdListlist of assignable distributor Ids
ErrorsNULL_ARGUMENT distributorId or provisionableId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignProvisionableToDistributor
Description

Adds an existing Provisionable to a Distributor.

Parametersosid.id.IdprovisionableIdthe Id of the Provisionable
osid.id.IddistributorIdthe Id of the Distributor
ErrorsALREADY_EXISTS provisionableId is already assigned to distributorId
NOT_FOUND provisionableId or distributorId not found
NULL_ARGUMENT provisionableId or distributorId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignProvisionableFromDistributor
Description

Removes a Provisionable from a Distributor.

Parametersosid.id.IdprovisionableIdthe Id of the Provisionable
osid.id.IddistributorIdthe Id of the Distributor
ErrorsNOT_FOUND provisionableId or distributorId not found or provisionableId not assigned to distributorId
NULL_ARGUMENT provisionableId or distributorId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.