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

This session provides methods to re-assign DeviceEnabler to System mappings. A DeviceEnabler may appear in multiple System objects and removing the last reference to a DeviceEnabler 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 DeviceEnabler to another System is not a copy operation (eg: does not change its Id ).

MethodcanAssignDeviceEnablers
Description

Tests if this user can alter device enabler/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 lookup operations to unauthorized users.

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

Tests if this user can alter device enabler/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 lookup 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 device enabler 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.
MethodgetAssignableSystemIdsForDeviceEnabler
Description

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

Parametersosid.id.IdsystemIdthe Id of the System
osid.id.IddeviceEnablerIdthe Id of the DeviceEnabler
Returnosid.id.IdListlist of assignable system Ids
ErrorsNULL_ARGUMENT systemId or deviceEnablerId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignDeviceEnablerToSystem
Description

Adds an existing DeviceEnabler to a System.

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

Removes a DeviceEnabler from a System.

Parametersosid.id.IddeviceEnablerIdthe Id of the DeviceEnabler
osid.id.IdsystemIdthe Id of the System
ErrorsNOT_FOUND deviceEnablerId or systemId not found or deviceEnablerId already assigned to systemId
NULL_ARGUMENT deviceEnablerId or systemId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignDeviceEnablerToSystem
Description

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

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