OSID Logo
OSID Specifications
sequencing package
Version 3.0.0
Release Candidate Preview
Interfaceosid.sequencing.ChainAntimatroidAssignmentSession
Implementsosid.OsidSession
Description

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

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

MethodcanAssignChains
Description

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

Tests if this user can alter chain/antimatroid 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.IdantimatroidIdthe Id of the Antimatroid
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT antimatroidId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableAntimatroidIds
Description

Gets a list of antimatroids including and under the given antimatroid node in which any chain can be assigned.

Parametersosid.id.IdantimatroidIdthe Id of the Antimatroid
Returnosid.id.IdListlist of assignable antimatroid Ids
ErrorsNULL_ARGUMENT antimatroidId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableAntimatroidIdsForChain
Description

Gets a list of antimatroids including and under the given antimatroid node in which a specific chain can be assigned.

Parametersosid.id.IdantimatroidIdthe Id of the Antimatroid
osid.id.IdchainIdthe Id of the Chain
Returnosid.id.IdListlist of assignable antimatroid Ids
ErrorsNULL_ARGUMENT antimatroidId or chainId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignChainToAntimatroid
Description

Adds an existing Chain to a Antimatroid.

Parametersosid.id.IdchainIdthe Id of the Chain
osid.id.IdantimatroidIdthe Id of the Antimatroid
ErrorsALREADY_EXISTS chainId is already assigned to antimatroidId
NOT_FOUND chainId or antimatroidId not found
NULL_ARGUMENT chainId or antimatroidId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignChainFromAntimatroid
Description

Removes a Chain from a Antimatroid.

Parametersosid.id.IdchainIdthe Id of the Chain
osid.id.IdantimatroidIdthe Id of the Antimatroid
ErrorsNOT_FOUND chainId or antimatroidId not found or chainId not assigned to antimatroidId
NULL_ARGUMENT chainId or antimatroidId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignChainToAntimatroid
Description

Moves a Chain from one Antimatroid to another. Mappings to other Antimatroids are unaffected.

Parametersosid.id.IdchainIdthe Id of the Chain
osid.id.IdfromAntimatroidIdthe Id of the current Antimatroid
osid.id.IdtoAntimatroidIdthe Id of the destination Antimatroid
ErrorsNOT_FOUND chainId, fromAntimatroidId, or toAntimatroidId not found or chainId not mapped to fromAntimatroidId
NULL_ARGUMENT chainId, fromAntimatroidId, or toAntimatroidId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.