OSID Logo
OSID Specifications
resource demographic package
Version 3.1.0
Interfaceosid.resource.demographic.DemographicBinAssignmentSession
Implementsosid.OsidSession
Used Byosid.resource.demographic.ResourceDemographicManager
osid.resource.demographic.ResourceDemographicProxyManager
Description

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

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

MethodcanAssignDemographics
Description

Tests if this user can alter demographic/bin 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.
MethodcanAssignDemographicsToBin
Description

Tests if this user can alter demographic/bin 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.IdbinId the Id of the Bin
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT binId is null
Compliancemandatory This method must be implemented.
MethodgetAssignableBinIds
Description

Gets a list of bins including and under the given bin node in which any demographic can be assigned.

Parametersosid.id.IdbinId the Id of the Bin
Returnosid.id.IdList list of assignable bin Ids
ErrorsNULL_ARGUMENT binId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodgetAssignableBinIdsForDemographic
Description

Gets a list of bins including and under the given bin node in which a specific demographic can be assigned.

Parametersosid.id.IdbinId the Id of the Bin
osid.id.IddemographicId the Id of the Demographic
Returnosid.id.IdList list of assignable bin Ids
ErrorsNULL_ARGUMENT binId or demographicId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignDemographicToBin
Description

Adds an existing Demographic to an Bin.

Parametersosid.id.IddemographicId the Id of the Demographic
osid.id.IdbinId the Id of the Bin
ErrorsALREADY_EXISTS demographicId is not assigned to binId
NOT_FOUND demographicId or binId not found
NULL_ARGUMENT demographicId or binId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignDemographicFromBin
Description

Removes a Demographic from a Bin.

Parametersosid.id.IddemographicId the Id of the Demographic
osid.id.IdbinId the Id of the Bin
ErrorsNOT_FOUND demographicId or binId not found or demographicId not assigned to binId
NULL_ARGUMENT demographicId or binId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignDemographicToBin
Description

Moves a Demographic from one Bin to another. Mappings to other Bins are unaffected.

Parametersosid.id.IddemographicId the Id of the Demographic
osid.id.IdfromBinId the Id of the current Bin
osid.id.IdtoBinId the Id of the destination Bin
ErrorsALREADY_EXISTS demographicId already assigned to toBinId
NOT_FOUND demographicId, fromBinId, or toBinId not found or demographicId not mapped to fromBinId
NULL_ARGUMENT demographicId, fromBinId, or toBinId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.