From badc1a111b14efa3b4f572c786e5d123894cd410 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?S=C3=B6ren=20Henning?= <stu114708@informatik.uni-kiel.de>
Date: Sat, 26 Mar 2016 14:01:48 +0100
Subject: [PATCH] Add some attributes to GraphML export

---
 .../graph/export/graphml/GraphTypeTransformer.java   | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java b/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
index b9367e7c..f2f10665 100644
--- a/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
+++ b/src/main/java/kieker/analysis/graph/export/graphml/GraphTypeTransformer.java
@@ -1,9 +1,11 @@
 package kieker.analysis.graph.export.graphml;
 
 import org.graphdrawing.graphml.EdgeType;
+import org.graphdrawing.graphml.GraphEdgedefaultType;
 import org.graphdrawing.graphml.GraphType;
 import org.graphdrawing.graphml.NodeType;
 
+import kieker.analysis.graph.Direction;
 import kieker.analysis.graph.Edge;
 import kieker.analysis.graph.Graph;
 import kieker.analysis.graph.Vertex;
@@ -16,13 +18,16 @@ public class GraphTypeTransformer extends AbstractTransformer<GraphType> {
 	public GraphTypeTransformer(final Graph graph) {
 		super(graph);
 		graphType = new GraphType();
+		graphType.setEdgedefault(GraphEdgedefaultType.DIRECTED);
+		graphType.setId(graph.getName());
 	}
 
 	@Override
 	protected void mapVertex(final Vertex vertex) {
 
 		NodeType nodeType = new NodeType();
-		// TODO Map Properties + id
+		nodeType.setId(vertex.getId().toString());
+		// TODO Map Properties
 
 		if (vertex.hasChildGraph()) {
 			Graph childGraph = vertex.getChildGraph();
@@ -37,7 +42,10 @@ public class GraphTypeTransformer extends AbstractTransformer<GraphType> {
 	@Override
 	protected void mapEdge(final Edge edge) {
 		EdgeType edgeType = new EdgeType();
-		// TODO Map Properties + id + source/target
+		edgeType.setId(edge.getId().toString());
+		edgeType.setSource(edge.getVertex(Direction.OUT).getId().toString());
+		edgeType.setTarget(edge.getVertex(Direction.IN).getId().toString());
+		// TODO Map Properties
 		graphType.getDataOrNodeOrEdge().add(edgeType);
 	}
 
-- 
GitLab