OSID Logo
OSID Specifications
control package
Version 3.1.0
Interfaceosid.control.ControllerSystemAssignmentSession
Implementsosid.OsidSession
Used Byosid.control.ControlManager
osid.control.ControlProxyManager
Description

This session provides methods to re-assign Controller to System mappings. A Controller may appear in multiple Systems 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
Compliancemandatory This 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.IdsystemId the Id of the System
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT systemId is null
Compliancemandatory This 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.IdsystemId the Id of the System
Returnosid.id.IdList list of assignable system Ids
ErrorsNULL_ARGUMENT systemId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This 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.IdsystemId the Id of the System
osid.id.IdcontrollerId the Id of the Controller
Returnosid.id.IdList list of assignable system Ids
ErrorsNULL_ARGUMENT systemId or controllerId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignControllerToSystem
Description

Adds an existing Controller to a System.

Parametersosid.id.IdcontrollerId the Id of the Controller
osid.id.IdsystemId the 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_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignControllerFromSystem
Description

Removes a Controller from a System.

Parametersosid.id.IdcontrollerId the Id of the Controller
osid.id.IdsystemId the 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_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignControllerToSystem
Description

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

Parametersosid.id.IdcontrollerId the Id of the Controller
osid.id.IdfromSystemId the Id of the current System
osid.id.IdtoSystemId the Id of the destination System
ErrorsALREADY_EXISTS controllerId already assigned to toSystemId
NOT_FOUND controllerId, fromSystemId, or toSystemId not found or controllerId not mapped to fromSystemId
NULL_ARGUMENT controllerId, fromSystemId, or toSystemId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.