public void AddEdge(int id, int sourceNodeId, int targetNodeId, GraphmlEdgeType type, string label = null) { var edgeId = FormatEdgeId(id); var stringSourceNodeId = FormatNodeId(sourceNodeId); var stringTargetNodeId = FormatNodeId(targetNodeId); switch (type) { case GraphmlEdgeType.Activity: edges.Add(GraphmlEdgeBuilder.BuildActivity(edgeId, stringSourceNodeId, stringTargetNodeId, label)); break; case GraphmlEdgeType.CriticalActivity: edges.Add(GraphmlEdgeBuilder.BuildCriticalActivity(edgeId, stringSourceNodeId, stringTargetNodeId, label)); break; case GraphmlEdgeType.Dummy: edges.Add(GraphmlEdgeBuilder.BuildDummy(edgeId, stringSourceNodeId, stringTargetNodeId)); break; case GraphmlEdgeType.CriticalDummy: edges.Add(GraphmlEdgeBuilder.BuildCriticalDummy(edgeId, stringSourceNodeId, stringTargetNodeId)); break; default: break; } }