OSID Logo
OSID Specifications
control package
Version 3.0.0
Release Candidate Preview
Interfaceosid.control.ControllerSystemAssignmentSession
Implementsosid.OsidSession
Description

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

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

MethodcanAssignControllers
Description

Tests if this user can alter controller/system 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 mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignControllersToSystem
Description

Tests if this user can alter controller/system 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.IdsystemIdthe Id of the System
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT systemId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableSystemIds
Description

Gets a list of systems including and under the given system node in which any controller can be assigned.

Parametersosid.id.IdsystemIdthe Id of the System
Returnosid.id.IdListlist of assignable system Ids
ErrorsNULL_ARGUMENT systemId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableSystemIdsForController
Description

Gets a list of systems including and under the given system node in which a specific controller can be assigned.

Parametersosid.id.IdsystemIdthe Id of the System
osid.id.IdcontrollerIdthe Id of the Controller
Returnosid.id.IdListlist of assignable system Ids
ErrorsNULL_ARGUMENT systemId or controllerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignControllerToSystem
Description

Adds an existing Controller to a System.

Parametersosid.id.IdcontrollerIdthe Id of the Controller
osid.id.IdsystemIdthe Id of the System
ErrorsALREADY_EXISTS controllerId is already assigned to systemId
NOT_FOUND controllerId or systemId not found
NULL_ARGUMENT controllerId or systemId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignControllerFromSystem
Description

Removes a Controller from a System.

Parametersosid.id.IdcontrollerIdthe Id of the Controller
osid.id.IdsystemIdthe Id of the System
ErrorsNOT_FOUND controllerId or systemId not found or controllerId not assigned to systemId
NULL_ARGUMENT controllerId or systemId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignControllerToSystem
Description

Moves a Controller from one System to another. Mappings to other Systems are unaffected.

Parametersosid.id.IdcontrollerIdthe Id of the Controller
osid.id.IdfromSystemIdthe Id of the current System
osid.id.IdtoSystemIdthe Id of the destination System
ErrorsNOT_FOUND controllerId, fromSystemId, or toSystemId not found or controllerId not mapped to fromSystemId
NULL_ARGUMENT controllerId, fromSystemId, or toSystemId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.