OSID Logo
OSID Specifications
topology package
Version 3.0.0
Interfaceosid.topology.EdgeGraphAssignmentSession
Implementsosid.OsidSession
Used Byosid.topology.TopologyManager
osid.topology.TopologyProxyManager
Description

This session provides methods to re-assign Edges to Graph objects An Edge may appear in multiple Graph objects and removing the last reference to an Edge is the equivalent of deleting it. Each Graph may have its own authorizations governing who is allowed to operate on it.

Adding a reference of an Edge to another Graph is not a copy operation (eg: does not change its Id ).

MethodcanAssignEdges
Description

Tests if this user can alter edge/graph 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.

Returnbooleanfalse if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignEdgesToGraph
Description

Tests if this user can alter edge/graph 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.IdgraphIdthe Id of the Graph
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTgraphId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableGraphIds
Description

Gets a list of graphs including and under the given graph node in which any edge can be assigned.

Parametersosid.id.IdgraphIdthe Id of the Graph
Returnosid.id.IdListlist of assignable graph Ids
ErrorsNULL_ARGUMENTgraphId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableGraphIdsForEdge
Description

Gets a list of graphs including and under the given graph node in which a specific edge can be assigned.

Parametersosid.id.IdgraphIdthe Id of the Graph
osid.id.IdedgeIdthe Id of the Edge
Returnosid.id.IdListlist of assignable graph Ids
ErrorsNULL_ARGUMENTgraphId or edgeId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignEdgeToGraph
Description

Adds an existing Edge to a Graph .

Parametersosid.id.IdedgeIdthe Id of the Edge
osid.id.IdgraphIdthe Id of the Graph
ErrorsALREADY_EXISTSedgeId is already assigned to graphId
NOT_FOUNDedgeId or graphId not found
NULL_ARGUMENTedgeId or graphId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignEdgeFromGraph
Description

Removes an Edge from a Graph .

Parametersosid.id.IdedgeIdthe Id of the Edge
osid.id.IdgraphIdthe Id of the Graph
ErrorsNOT_FOUNDedgeId or graphId not found or edgeId not assigned to graphId
NULL_ARGUMENTedgeId or graphId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignEdgeToGraph
Description

Moves an Edge from one Graph to another. Mappings to other Graphs are unaffected.

Parametersosid.id.IdedgeIdthe Id of the Edge
osid.id.IdfromGraphIdthe Id of the current Graph
osid.id.IdtoGraphIdthe Id of the destination Graph
ErrorsALREADY_EXISTSedgeId already assigned to toGraphId
NOT_FOUNDedgeId, fromGraphId , or toGraphId not found or edgeId not mapped to fromGraphId
NULL_ARGUMENTedgeId, fromGraphId , or toGraphId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.