Browse Source

Replaced every reference to Edge/Node with MyEdge/MyNode

MW 7 years ago
parent
commit
85ee2dffca
22 changed files with 186 additions and 202 deletions
  1. 1 3
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/EdgeCreatedListener.java
  2. 19 21
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/GraphHelper.java
  3. 17 19
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/GraphManager.java
  4. 43 45
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/MappingGraphManager.java
  5. 3 4
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/MyGraph.java
  6. 1 3
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/NodeCreatedListener.java
  7. 4 5
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/io/GraphMLImporter.java
  8. 6 6
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/io/MyFileSinkGraphML.java
  9. 9 9
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/main/EdgeSelectionHelper.java
  10. 3 2
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/main/MainApp.java
  11. 15 16
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/BasicMappingOperator.java
  12. 9 9
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/CommunicationCostMetric.java
  13. 7 8
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/OperatorInfoMetric.java
  14. 5 6
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/PlacementCostMetric.java
  15. 7 8
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/TaskFulfillmentMetric.java
  16. 2 3
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/TestOperator.java
  17. 9 9
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/PropertiesManager.java
  18. 3 4
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/ToolboxManager.java
  19. 4 4
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/handlers/MyMouseManager.java
  20. 6 6
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/CustomMapClickListener.java
  21. 7 6
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/EdgePainter.java
  22. 6 6
      scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/WorldView.java

+ 1 - 3
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/EdgeCreatedListener.java

@@ -1,7 +1,5 @@
 package de.tu_darmstadt.informatik.tk.scopviz.graphs;
 
-import org.graphstream.graph.Edge;
-
 /**
  * Interface for listeners on new Edges being created.
  * 
@@ -19,5 +17,5 @@ public interface EdgeCreatedListener {
 	 * @param graphID
 	 *            the ID of the Graph that had the Edge added to it
 	 */
-	public void edgeCreated(Edge e, String graphID);
+	public void edgeCreated(MyEdge e, String graphID);
 }

+ 19 - 21
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/GraphHelper.java

@@ -6,9 +6,7 @@ import java.util.Iterator;
 import java.util.Random;
 
 import org.graphstream.algorithm.Toolkit;
-import org.graphstream.graph.Edge;
 import org.graphstream.graph.Element;
-import org.graphstream.graph.Node;
 import org.graphstream.ui.geom.Point3;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
@@ -63,7 +61,7 @@ public class GraphHelper {
 	private static void copyEdges(MyGraph target, MyGraph source, HashMap<String, String> newIds) {
 		Random ran = new Random();
 		boolean searchingForId = true;
-		for (Edge e : source.getEdgeSet()) {
+		for (MyEdge e : source.<MyEdge>getEdgeSet()) {
 			// finding a new ID for the Node
 			searchingForId = true;
 			String newId = source.getId() + e.getId();
@@ -93,7 +91,7 @@ public class GraphHelper {
 		HashMap<String, String> newIds = new HashMap<>();
 		Random ran = new Random();
 		boolean searchingForId = true;
-		for (Node n : source.getNodeSet()) {
+		for (MyNode n : source.<MyNode>getNodeSet()) {
 			// finding a new ID for the Node
 			searchingForId = true;
 			String newId = source.getId() + n.getId();
@@ -122,7 +120,7 @@ public class GraphHelper {
 
 	private static void adjustSourceYCoordinates(MyGraph g, double scalingFactor, double targetMinY,
 			double sourceMinY) {
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			double d = (Double) n.getAttribute("y");
 			d = d - sourceMinY;
 			d = d * scalingFactor;
@@ -132,7 +130,7 @@ public class GraphHelper {
 	}
 
 	private static void graphAttribute(MyGraph g) {
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			if (n.getAttribute("originalGraph") == null) {
 				n.addAttribute("originalGraph", g.getId());
 			}
@@ -140,7 +138,7 @@ public class GraphHelper {
 	}
 
 	private static void adjustSourceXCoordinates(MyGraph g, Double scalingFactor, Double xOffset, Double SourceMinX) {
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			Double d = (Double) n.getAttribute("x");
 			d = d - SourceMinX;
 			d = d * scalingFactor;
@@ -155,8 +153,8 @@ public class GraphHelper {
 	 */
 	public static void correctCoordinates(MyGraph g) {
 		Point3 coords;
-		Node n = null;
-		Iterator<Node> allNodes = g.getNodeIterator();
+		MyNode n = null;
+		Iterator<MyNode> allNodes = g.getNodeIterator();
 
 		while (allNodes.hasNext()) {
 			n = allNodes.next();
@@ -179,8 +177,8 @@ public class GraphHelper {
 		if (!Layer.UNDERLAY.equals(g.getAttribute("layer"))) {
 			return;
 		}
-		Edge e = null;
-		Iterator<Edge> allEdges = g.getEdgeIterator();
+		MyEdge e = null;
+		Iterator<MyEdge> allEdges = g.getEdgeIterator();
 
 		while (allEdges.hasNext()) {
 			e = allEdges.next();
@@ -202,7 +200,7 @@ public class GraphHelper {
 	 *            the graph that the attributes will be added onto
 	 */
 	public static void setAllDefaults(MyGraph g) {
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			// general defaults
 			if (!n.hasAttribute("ui.label")) {
 				n.addAttribute("ui.label", "");
@@ -243,14 +241,14 @@ public class GraphHelper {
 		}
 		String origGraph = n.getAttribute("originalElement").toString().split("\\+#")[0];
 		String origNode = n.getAttribute("originalElement").toString().split("\\+#")[1];
-		Node oldNode = null;
-		Edge oldEdge = null;
+		MyNode oldNode = null;
+		MyEdge oldEdge = null;
 		MyGraph old = null;
 		Iterator<MyGraph> graphIter = g.getAllSubGraphs().iterator();
 		while (graphIter.hasNext()) {
 			old = graphIter.next();
 			if (old.getId().equals(origGraph)) {
-				Iterator<Node> nodeIter = old.getNodeIterator();
+				Iterator<MyNode> nodeIter = old.getNodeIterator();
 				while (nodeIter.hasNext()) {
 					oldNode = nodeIter.next();
 					if (oldNode.getId().equals(origNode)) {
@@ -263,7 +261,7 @@ public class GraphHelper {
 						return;
 					}
 				}
-				Iterator<Edge> edgeIter = old.getEdgeIterator();
+				Iterator<MyEdge> edgeIter = old.getEdgeIterator();
 				while (edgeIter.hasNext()) {
 					oldEdge = edgeIter.next();
 					if (oldEdge.getId().equals(origNode)) {
@@ -303,10 +301,10 @@ public class GraphHelper {
 		while (graphIter.hasNext()) {
 			MyGraph temp = graphIter.next();
 			if (temp.getId().equals(origGraph)) {
-				if (e instanceof Node && temp.getNode(origId) != null) {
+				if (e instanceof MyNode && temp.getNode(origId) != null) {
 					temp.removeNode(origId);
 					return temp.getId();
-				} else if (e instanceof Edge && temp.getEdge(origId) != null) {
+				} else if (e instanceof MyEdge && temp.getEdge(origId) != null) {
 					temp.removeEdge(origId);
 					return temp.getId();
 				} else {
@@ -337,13 +335,13 @@ public class GraphHelper {
 			MyGraph temp = graphIter.next();
 			if (temp.getId().equals(origGraph)) {
 				String newId = Main.getInstance().getUnusedID(new GraphManager(temp));
-				if (e instanceof Node) {
+				if (e instanceof MyNode) {
 					temp.addNode(newId);
 					temp.getNode(newId).addAttributes(attributes);
 					return temp.getId() + "+#" + newId;// the id of
 														// Graph+newNode
-				} else if (e instanceof Edge) {
-					Edge ed = (Edge) e;
+				} else if (e instanceof MyEdge) {
+					MyEdge ed = (MyEdge) e;
 					String sourceId = ed.getSourceNode().getAttribute("originalElement").toString()
 							.split("\\+#")[newNodeId.split("\\+#").length - 1];
 					String targetId = ed.getTargetNode().getAttribute("originalElement").toString()

+ 17 - 19
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/GraphManager.java

@@ -4,9 +4,7 @@ import java.util.Collection;
 import java.util.HashMap;
 import java.util.LinkedList;
 
-import org.graphstream.graph.Edge;
 import org.graphstream.graph.Element;
-import org.graphstream.graph.Node;
 import org.graphstream.ui.swingViewer.ViewPanel;
 import org.graphstream.ui.view.Viewer;
 import org.graphstream.ui.view.ViewerPipe;
@@ -46,9 +44,9 @@ public class GraphManager {
 	protected String stylesheet = "";
 
 	/** The last Node that was deleted. */
-	protected Node deletedNode;
+	protected MyNode deletedNode;
 	/** The last Edge that was deleted. */
-	protected LinkedList<Edge> deletedEdges = new LinkedList<>();
+	protected LinkedList<MyEdge> deletedEdges = new LinkedList<>();
 
 	/** The currently selected Node, mutually exclusive with selectedEdgeID. */
 	protected String selectedNodeID = null;
@@ -134,13 +132,13 @@ public class GraphManager {
 	 */
 	protected void deleteEdgesOfNode(final String id) {
 		deselect();
-		Node node = g.getNode(id);
+		MyNode node = g.getNode(id);
 		deletedEdges.removeAll(deletedEdges);
 		deletedNode = null;
-		Edge[] temp = new Edge[0];
+		MyEdge[] temp = new MyEdge[0];
 		temp = g.getEdgeSet().toArray(temp);
 
-		for (Edge e : temp) {
+		for (MyEdge e : temp) {
 			if (e.getSourceNode().equals(node) || e.getTargetNode().equals(node)) {
 				// adds the Edge to the list of deleted Edges and remove sit
 				// from the Graph
@@ -172,7 +170,7 @@ public class GraphManager {
 			}
 		}
 
-		for (Edge e : deletedEdges) {
+		for (MyEdge e : deletedEdges) {
 			String sourceId = null;
 			String targetId = null;
 			attributes = new HashMap<String, Object>();
@@ -254,7 +252,7 @@ public class GraphManager {
 			deselect();
 			this.selectedNodeID = nodeID;
 
-			Node n = g.getNode(nodeID);
+			MyNode n = g.getNode(nodeID);
 			// set selected node color to red
 			if (!hasClass(n, UI_CLASS_PROCESSING_ENABLED)
 					|| !GraphDisplayManager.getCurrentLayer().equals(Layer.MAPPING)) {
@@ -291,7 +289,7 @@ public class GraphManager {
 		}
 		// Set last selected Node color to black
 		else if (getSelectedNodeID() != null && g.getNode(getSelectedNodeID()) != null) {
-			Node n = g.getNode(getSelectedNodeID());
+			MyNode n = g.getNode(getSelectedNodeID());
 			if (!hasClass(n, UI_CLASS_PROCESSING_ENABLED)
 					|| !GraphDisplayManager.getCurrentLayer().equals(Layer.MAPPING)) {
 				String nodeType = n.getAttribute("ui.class");
@@ -378,7 +376,7 @@ public class GraphManager {
 	 * @param n
 	 *            the Node to be added to the graph
 	 */
-	public void addNode(Node n) {
+	public void addNode(MyNode n) {
 		HashMap<String, Object> attributes = new HashMap<>();
 
 		for (String s : n.getAttributeKeySet()) {
@@ -493,8 +491,8 @@ public class GraphManager {
 	 * 
 	 */
 	public void convertUiClass() {
-		Collection<Node> allNodes = g.getNodeSet();
-		for (Node n : allNodes) {
+		Collection<MyNode> allNodes = g.getNodeSet();
+		for (MyNode n : allNodes) {
 			if (n.hasAttribute("typeofNode")) {
 				n.addAttribute("ui.class", n.getAttribute("typeofNode").toString());
 			}
@@ -543,8 +541,8 @@ public class GraphManager {
 		String newID = Main.getInstance().getUnusedID();
 
 		boolean isDirected = (Main.getInstance().getCreationMode() == CreationMode.CREATE_DIRECTED_EDGE);
-		Node sourceNode = g.getNode(from);
-		Node targetNode = g.getNode(to);
+		MyNode sourceNode = g.getNode(from);
+		MyNode targetNode = g.getNode(to);
 		
 		if (activeSubGraph != null && !activeSubGraph.equals(g)) {
 			
@@ -584,7 +582,7 @@ public class GraphManager {
 	 */
 	protected boolean selectNodeForEdgeCreation(String nodeID) {
 		deselect();
-		Node n = getGraph().getNode(nodeID);
+		MyNode n = getGraph().getNode(nodeID);
 		if (!hasClass(n, UI_CLASS_PROCESSING_ENABLED) || !GraphDisplayManager.getCurrentLayer().equals(Layer.MAPPING)) {
 			n.changeAttribute("ui.style", "fill-color:green; size: 15px;");
 		}
@@ -598,7 +596,7 @@ public class GraphManager {
 	 *            the Id of the node to deselect.
 	 */
 	protected void deselectNodesAfterEdgeCreation(String nodeID) {
-		Node n = getGraph().getNode(nodeID);
+		MyNode n = getGraph().getNode(nodeID);
 		if (n == null) {
 			return;
 		}
@@ -685,7 +683,7 @@ public class GraphManager {
 				|| eClass.contains(", ".concat(className))));
 	}
 
-	protected boolean hasClass(Edge e, String className) {
+	protected boolean hasClass(MyEdge e, String className) {
 		if (e == null)
 			return false;
 		String eClass = e.getAttribute("ui.class");
@@ -693,7 +691,7 @@ public class GraphManager {
 				|| eClass.contains(", ".concat(className))));
 	}
 
-	protected boolean hasClass(Node n, String className) {
+	protected boolean hasClass(MyNode n, String className) {
 		if (n == null)
 			return false;
 		String nClass = n.getAttribute("ui.class");

+ 43 - 45
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/MappingGraphManager.java

@@ -5,8 +5,6 @@ import java.util.HashMap;
 import java.util.LinkedList;
 
 import org.graphstream.algorithm.Toolkit;
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
@@ -92,7 +90,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	public void loadGraph(MyGraph g) {
 
 		// reset used capacity to 0 for every procEnabled node
-		for (Node n : this.g.getNodeSet()) {
+		for (MyNode n : this.g.<MyNode>getNodeSet()) {
 			if (hasClass(n, UI_CLASS_PROCESSING_ENABLED)) {
 				resetCapacity(n);
 			}
@@ -102,7 +100,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 		autoMapLoadedEdgeAttributes(underlay, operator);
 
 		// recreates every mapping edge to properly calculate capacities
-		for (Edge e : g.getEdgeSet()) {
+		for (MyEdge e : g.<MyEdge>getEdgeSet()) {
 			if (e.getAttribute(ATTRIBUTE_KEY_MAPPING) != null && (boolean) e.getAttribute(ATTRIBUTE_KEY_MAPPING)) {
 				createEdge(e.getSourceNode().getId(), e.getTargetNode().getId());
 			}
@@ -127,7 +125,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 		// Debug only
 		int i = 0;
 
-		for (Edge edge : gm.getGraph().getEdgeSet()) {
+		for (MyEdge edge : gm.getGraph().<MyEdge>getEdgeSet()) {
 			addEdge(edge, idPrefix);
 
 			// Debug only
@@ -180,9 +178,9 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 
 		// loops through all nodes, adds them if they don't exist already and
 		// normalizes their coordinates
-		for (Node node : gm.getGraph().getNodeSet()) {
+		for (MyNode node : gm.getGraph().<MyNode>getNodeSet()) {
 			// add node if it doesn't exist
-			Node newNode = getGraph().getNode(idPrefix + node.getId());
+			MyNode newNode = getGraph().getNode(idPrefix + node.getId());
 			if (newNode == null) {
 				addNode(node, idPrefix);
 				newNode = getGraph().getNode(idPrefix + node.getId());
@@ -248,7 +246,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 * @param idPrefix
 	 *            the String to be added as prefix to the ID
 	 */
-	private void addEdge(Edge e, String idPrefix) {
+	private void addEdge(MyEdge e, String idPrefix) {
 		HashMap<String, Object> attributes = new HashMap<>();
 
 		for (String s : e.getAttributeKeySet()) {
@@ -265,7 +263,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	}
 
 	@Override
-	public void addNode(Node n) {
+	public void addNode(MyNode n) {
 		// This function mustn't be called.
 		Debug.out("Someone called addNode(Node n) with a MappingGraphManager");
 	}
@@ -279,7 +277,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 * @param idPrefix
 	 *            the String to be added as prefix to the ID
 	 */
-	private void addNode(Node n, String idPrefix) {
+	private void addNode(MyNode n, String idPrefix) {
 		HashMap<String, Object> attributes = new HashMap<>();
 
 		for (String s : n.getAttributeKeySet()) {
@@ -294,7 +292,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	}
 
 	@Override
-	public void nodeCreated(Node n, String graphID) {
+	public void nodeCreated(MyNode n, String graphID) {
 		if (graphID.equals(underlay.getGraph().getId()))
 			underlayNodesChanged = true;
 		else if (graphID.equals(operator.getGraph().getId()))
@@ -302,7 +300,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	}
 
 	@Override
-	public void edgeCreated(Edge e, String graphID) {
+	public void edgeCreated(MyEdge e, String graphID) {
 		if (graphID.equals(underlay.getGraph().getId()))
 			addEdge(e, UNDERLAY);
 		else if (graphID.equals(operator.getGraph().getId()))
@@ -316,7 +314,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 		if (lastClickedID != null) {
 			Double need = g.getNode(lastClickedID).getAttribute(ATTRIBUTE_KEY_PROCESS_NEED);
 			if (need != null)
-				for (Node n : g.getNodeSet())
+				for (MyNode n : g.<MyNode>getNodeSet())
 					if (hasClass(n, UI_CLASS_PROCESSING_ENABLED))
 						showExpectedCapacity(n, need);
 		}
@@ -331,7 +329,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	@Override
 	protected void deselectNodesAfterEdgeCreation(String nodeID) {
 		super.deselectNodesAfterEdgeCreation(nodeID);
-		for (Node n : g.getNodeSet())
+		for (MyNode n : g.<MyNode>getNodeSet())
 			if (hasClass(n, UI_CLASS_PROCESSING_ENABLED))
 				showExpectedCapacity(n, 0);
 	}
@@ -342,13 +340,13 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 */
 	@Override
 	public boolean createEdge(String to, String from) {
-		Node fromNode = getGraph().getNode(from);
-		Node toNode = getGraph().getNode(to);
+		MyNode fromNode = getGraph().getNode(from);
+		MyNode toNode = getGraph().getNode(to);
 
 		if (fromNode.hasEdgeBetween(to))
 			return false;
 
-		for (Edge e : fromNode.getEdgeSet()) {
+		for (MyEdge e : fromNode.<MyEdge>getEdgeSet()) {
 			Boolean mapped = e.getAttribute("mapping");
 			if (mapped != null && mapped)
 				return false;
@@ -369,10 +367,10 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 
 		String newID = Main.getInstance().getUnusedID();
 
-		Edge e;
+		MyEdge e;
 
-		Node underlayNode;
-		Node operatorNode;
+		MyNode underlayNode;
+		MyNode operatorNode;
 		if (fromParent.equals(UNDERLAY)) {
 			underlayNode = fromNode;
 			operatorNode = toNode;
@@ -417,7 +415,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 * @param underlayNode
 	 *            The Node for which the pie chart should be initialized
 	 */
-	private void initCapacity(Node underlayNode) {
+	private void initCapacity(MyNode underlayNode) {
 		Double used = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_USE);
 		Double max = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_MAX);
 		if (max == null || max == 0)
@@ -436,7 +434,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 * @param underlayNode
 	 *            The Node for which the pie chart should be initialized
 	 */
-	private void resetCapacity(Node underlayNode) {
+	private void resetCapacity(MyNode underlayNode) {
 		Double used = new Double(0);
 		underlayNode.setAttribute(ATTRIBUTE_KEY_PROCESS_USE, used);
 		Double max = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_MAX);
@@ -456,7 +454,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 *            The operatorNode which gets mapped
 	 * @return true if the mapping was successful. false otherwise.
 	 */
-	private boolean addMapping(Node underlayNode, Node operatorNode) {
+	private boolean addMapping(MyNode underlayNode, MyNode operatorNode) {
 		Double needed = operatorNode.getAttribute(ATTRIBUTE_KEY_PROCESS_NEED);
 		if (needed == null)
 			return true;
@@ -473,7 +471,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 *            The operatorNode which gets mapped
 	 * @return true if the mapping was successful. false otherwise.
 	 */
-	private boolean removeMapping(Node underlayNode, Node operatorNode) {
+	private boolean removeMapping(MyNode underlayNode, MyNode operatorNode) {
 		Double needed = operatorNode.getAttribute(ATTRIBUTE_KEY_PROCESS_NEED);
 		if (needed == null)
 			return true;
@@ -490,7 +488,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 *            The capacity. may be positive or negative
 	 * @return true if the capacity change was successful. false otherwise.
 	 */
-	private boolean changeCapacity(Node underlayNode, double capacity) {
+	private boolean changeCapacity(MyNode underlayNode, double capacity) {
 		Double needed = capacity;
 		Double used = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_USE);
 		Double max = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_MAX);
@@ -519,7 +517,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	 * @param need
 	 *            the capacity change
 	 */
-	private void showExpectedCapacity(Node underlayNode, double need) {
+	private void showExpectedCapacity(MyNode underlayNode, double need) {
 		Double used = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_USE);
 		Double max = underlayNode.getAttribute(ATTRIBUTE_KEY_PROCESS_MAX);
 		if (max == null || max == 0)
@@ -541,12 +539,12 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 
 	@Override
 	protected boolean selectNodeForEdgeCreation(String nodeID) {
-		Node n = g.getNode(nodeID);
+		MyNode n = g.getNode(nodeID);
 		String parent = n.getAttribute(ATTRIBUTE_KEY_MAPPING_PARENT);
 		if (parent == null)
 			return false;
 		if (parent.equals(OPERATOR)) {
-			for (Edge e : n.getEdgeSet()) {
+			for (MyEdge e : n.<MyEdge>getEdgeSet()) {
 				Boolean isMapped = e.getAttribute(ATTRIBUTE_KEY_MAPPING);
 				if (isMapped != null && isMapped)
 					return false;
@@ -560,10 +558,10 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 
 	@Override
 	public void deleteEdge(final String id) {
-		Edge e = g.getEdge(id);
+		MyEdge e = g.getEdge(id);
 		if ((boolean) e.getAttribute(ATTRIBUTE_KEY_MAPPING)) {
-			Node operatorNode = e.getSourceNode();
-			Node underlayNode = e.getTargetNode();
+			MyNode operatorNode = e.getSourceNode();
+			MyNode underlayNode = e.getTargetNode();
 
 			// delete mapping attriute
 			GraphHelper.propagateAttribute(this.g, underlayNode, "mappingEdge", null);
@@ -585,7 +583,7 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	@Override
 	public void undelete() {
 		super.undelete();
-		for (Edge e : deletedEdges) {
+		for (MyEdge e : deletedEdges) {
 			if ((boolean) e.getAttribute(ATTRIBUTE_KEY_MAPPING))
 				changeCapacity(e.getTargetNode(), e.getSourceNode().getAttribute(ATTRIBUTE_KEY_PROCESS_NEED));
 		}
@@ -594,13 +592,13 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	private void autoMapSourcesAndSinks(GraphManager underlay, GraphManager operator) {
 		// TODO Andere Farbe für automatisch erstellte Mappingkanten von Quellen
 		// und Senken
-		for (Node operatorNode : getOperatorNodeSet()) {
+		for (MyNode operatorNode : getOperatorNodeSet()) {
 			if (operatorNode.getAttribute("typeofNode").toString().equals("source")) {
-				for (Node underlayNode : getUnderlayNodeSet()) {
+				for (MyNode underlayNode : getUnderlayNodeSet()) {
 					if (operatorNode.getAttribute("identifier") != null && operatorNode.getAttribute("identifier")
 							.equals(underlayNode.getAttribute("identifier"))) {
 						String newID = Main.getInstance().getUnusedID(this);
-						Edge e = getGraph().addEdge(newID, operatorNode, underlayNode, true);
+						MyEdge e = getGraph().addEdge(newID, operatorNode, underlayNode, true);
 						Debug.out("Created an directed edge with Id " + newID + " from " + operatorNode + " to "
 								+ underlayNode);
 
@@ -609,11 +607,11 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 					}
 				}
 			} else if (operatorNode.getAttribute("typeofNode").equals("sink")) {
-				for (Node underlayNode : getUnderlayNodeSet()) {
+				for (MyNode underlayNode : getUnderlayNodeSet()) {
 					String identifier = operatorNode.getAttribute("identifier");
 					if (identifier != null && identifier.equals(underlayNode.getAttribute("identifier"))) {
 						String newID = Main.getInstance().getUnusedID(this);
-						Edge e = getGraph().addEdge(newID, operatorNode, underlayNode, true);
+						MyEdge e = getGraph().addEdge(newID, operatorNode, underlayNode, true);
 						Debug.out("Created an directed edge with Id " + newID + " from " + operatorNode + " to "
 								+ underlayNode);
 
@@ -625,9 +623,9 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 		}
 	}
 
-	private Collection<Node> getOperatorNodeSet() {
-		LinkedList<Node> result = new LinkedList<Node>();
-		for (Node n : getGraph().getNodeSet()) {
+	private Collection<MyNode> getOperatorNodeSet() {
+		LinkedList<MyNode> result = new LinkedList<MyNode>();
+		for (MyNode n : getGraph().<MyNode>getNodeSet()) {
 			if (n.getAttribute(ATTRIBUTE_KEY_MAPPING_PARENT) == OPERATOR) {
 				result.add(n);
 			}
@@ -635,9 +633,9 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 		return result;
 	}
 
-	private Collection<Node> getUnderlayNodeSet() {
-		LinkedList<Node> result = new LinkedList<Node>();
-		for (Node n : getGraph().getNodeSet()) {
+	private Collection<MyNode> getUnderlayNodeSet() {
+		LinkedList<MyNode> result = new LinkedList<MyNode>();
+		for (MyNode n : getGraph().<MyNode>getNodeSet()) {
 			if (n.getAttribute(ATTRIBUTE_KEY_MAPPING_PARENT) == UNDERLAY) {
 				result.add(n);
 			}
@@ -646,8 +644,8 @@ public class MappingGraphManager extends GraphManager implements EdgeCreatedList
 	}
 
 	private void autoMapLoadedEdgeAttributes(GraphManager underlay2, GraphManager operator2) {
-		for (Node operatorNode : getOperatorNodeSet()) {
-			for (Node underlayNode : getUnderlayNodeSet()) {
+		for (MyNode operatorNode : getOperatorNodeSet()) {
+			for (MyNode underlayNode : getUnderlayNodeSet()) {
 				String identifier = operatorNode.getAttribute("mappingEdge");
 				if (identifier != null && identifier.equals(underlayNode.getAttribute("mappingEdge"))) {
 					createEdge(operatorNode.getId(), underlayNode.getId());

+ 3 - 4
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/MyGraph.java

@@ -7,7 +7,6 @@ import org.graphstream.graph.Edge;
 import org.graphstream.graph.Node;
 import org.graphstream.graph.implementations.SingleGraph;
 
-import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import de.tu_darmstadt.informatik.tk.scopviz.ui.OptionsManager;
@@ -106,10 +105,10 @@ public class MyGraph extends SingleGraph {
 				|| (e.getAttribute("weight") != null && (OptionsManager.getDefaultWeight() == Main.getInstance()
 						.convertAttributeTypes(e.getAttribute("weight"), new Double(0.0)))));
 		if (doWeight) {
-			ToolboxManager.createWeightDialog(e);
+			ToolboxManager.createWeightDialog((MyEdge) e);
 		}
 		for (EdgeCreatedListener list : allEdgeListeners) {
-			list.edgeCreated(e, id);
+			list.edgeCreated((MyEdge) e, id);
 		}
 	}
 
@@ -133,7 +132,7 @@ public class MyGraph extends SingleGraph {
 	private void nodeCreatedNotify(Node n) {
 		GraphHelper.setAllDefaults(this);
 		for (NodeCreatedListener list : allNodeListeners) {
-			list.nodeCreated(n, id);
+			list.nodeCreated((MyNode) n, id);
 		}
 	}
 

+ 1 - 3
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/graphs/NodeCreatedListener.java

@@ -1,7 +1,5 @@
 package de.tu_darmstadt.informatik.tk.scopviz.graphs;
 
-import org.graphstream.graph.Node;
-
 /**
  * Interface for Listeners on new Nodes being created.
  * 
@@ -18,5 +16,5 @@ public interface NodeCreatedListener {
 	 * @param graphID
 	 *            the Id of the Graph the Node was added to.
 	 */
-	public void nodeCreated(Node n, String graphID);
+	public void nodeCreated(MyNode n, String graphID);
 }

+ 4 - 5
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/io/GraphMLImporter.java

@@ -4,11 +4,10 @@ import java.io.IOException;
 import java.net.URL;
 import java.util.LinkedList;
 
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphHelper;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import javafx.stage.FileChooser;
 import javafx.stage.FileChooser.ExtensionFilter;
@@ -53,7 +52,7 @@ public class GraphMLImporter {
 			g = GraphHelper.newMerge(false, fs.getSubGraphs().toArray(new MyGraph[0]));
 		}
 		fs.removeSink(g);
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			n.removeAttribute("ui.class");
 		}
 		yEdConversion(g);
@@ -106,7 +105,7 @@ public class GraphMLImporter {
 			e.printStackTrace();
 		}
 		fs.removeSink(g);
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			n.removeAttribute("ui.class");
 		}
 		yEdConversion(g);
@@ -123,7 +122,7 @@ public class GraphMLImporter {
 	}
 
 	public void yEdConversion(MyGraph g) {
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			// yed conversion
 			if ((!n.hasAttribute("ui.label") || n.getAttribute("ui.label").equals("")) && n.hasAttribute("yEd.label")) {
 				n.addAttribute("ui.label", n.getAttribute("yEd.label").toString());

+ 6 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/io/MyFileSinkGraphML.java

@@ -5,13 +5,13 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedList;
 
-import org.graphstream.graph.Edge;
 import org.graphstream.graph.Graph;
-import org.graphstream.graph.Node;
 import org.graphstream.stream.file.FileSinkGraphML;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 
 public class MyFileSinkGraphML extends FileSinkGraphML {
 	public boolean isWritingMultigraph = false;
@@ -60,7 +60,7 @@ public class MyFileSinkGraphML extends FileSinkGraphML {
 				}
 			}
 
-			for (Node n : g.getEachNode()) {
+			for (MyNode n : g.<MyNode>getEachNode()) {
 				for (String k : n.getAttributeKeySet()) {
 					// AttributeFiltering
 					if (k.equals("ui.j2dsk") || k.equals("ui.class") || k.equals("ui.pie-values") || k.equalsIgnoreCase("originalgraph")) {
@@ -106,7 +106,7 @@ public class MyFileSinkGraphML extends FileSinkGraphML {
 				}
 			}
 
-			for (Edge n : g.getEachEdge()) {
+			for (MyEdge n : g.<MyEdge>getEachEdge()) {
 				for (String k : n.getAttributeKeySet()) {
 					// AttributeFiltering
 					if (k.equals("ui.j2dsk")) {
@@ -160,7 +160,7 @@ public class MyFileSinkGraphML extends FileSinkGraphML {
 						escapeXmlString(g.getAttribute(k).toString()));
 			}
 
-			for (Node n : g.getEachNode()) {
+			for (MyNode n : g.<MyNode>getEachNode()) {
 				print("\t\t<node id=\"%s\">\n", n.getId());
 				for (String k : n.getAttributeKeySet()) {
 					if (k.equals("ui.j2dsk") || k.equals("ui.class") || k.equals("ui.pie-values") || k.equalsIgnoreCase("originalgraph")) {
@@ -178,7 +178,7 @@ public class MyFileSinkGraphML extends FileSinkGraphML {
 				}
 				print("\t\t</node>\n");
 			}
-			for (Edge e : g.getEachEdge()) {
+			for (MyEdge e : g.<MyEdge>getEachEdge()) {
 				print("\t\t<edge id=\"%s\" source=\"%s\" target=\"%s\" directed=\"%s\">\n", e.getId(),
 						e.getSourceNode().getId(), e.getTargetNode().getId(), e.isDirected());
 				for (String k : e.getAttributeKeySet()) {

+ 9 - 9
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/main/EdgeSelectionHelper.java

@@ -3,12 +3,12 @@ package de.tu_darmstadt.informatik.tk.scopviz.main;
 import java.util.Iterator;
 
 import org.graphstream.algorithm.Toolkit;
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
 import org.graphstream.ui.geom.Point3;
 import org.graphstream.ui.view.Camera;
 
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 
 /**
  * This class contains helpful static functions.
@@ -45,7 +45,7 @@ public final class EdgeSelectionHelper {
 	 * @return the closest Edge if a valid Edge exists, returns <b>null</b>
 	 *         otherwise
 	 */
-	public static Edge getClosestEdge(Point3 pos) {
+	public static MyEdge getClosestEdge(Point3 pos) {
 		Camera cam = Main.getInstance().getGraphManager().getView().getCamera();
 
 		// gets to points within a fixed distance of each other and calculates
@@ -74,7 +74,7 @@ public final class EdgeSelectionHelper {
 	 * @return the closest Edge if a valid Edge exists, returns <b>null</b>
 	 *         otherwise
 	 */
-	public static Edge getClosestEdge(Point3 pos, double maxDistance) {
+	public static MyEdge getClosestEdge(Point3 pos, double maxDistance) {
 		double x0 = pos.x;
 		double y0 = pos.y;
 
@@ -83,14 +83,14 @@ public final class EdgeSelectionHelper {
 		double dist = maxDistance;
 
 		// keeps track of the current closest edge
-		Edge result = null;
+		MyEdge result = null;
 
 		GraphManager gm = Main.getInstance().getGraphManager();
 
 		// Iterates over every edge, calculates the distance and updates the
 		// best edge and corresponding distance
-		for (Iterator<Edge> iterator = gm.getGraph().getEdgeIterator(); iterator.hasNext();) {
-			Edge edge = (Edge) iterator.next();
+		for (Iterator<MyEdge> iterator = gm.getGraph().getEdgeIterator(); iterator.hasNext();) {
+			MyEdge edge = (MyEdge) iterator.next();
 
 			// Get the positions of the nodes of the currently selected edge.
 			double[] n1 = Toolkit.nodePosition(edge.getNode0());
@@ -146,7 +146,7 @@ public final class EdgeSelectionHelper {
 	 *            Node 2
 	 * @return the distance between the two Nodes as a double
 	 */
-	public static double distance(Node a, Node b) {
+	public static double distance(MyNode a, MyNode b) {
 		double[] n1 = Toolkit.nodePosition(a);
 		double[] n2 = Toolkit.nodePosition(b);
 
@@ -164,7 +164,7 @@ public final class EdgeSelectionHelper {
 	 *            the Node
 	 * @return the distance between the position and the Node as a double
 	 */
-	public static double distance(double x0, double y0, Node a) {
+	public static double distance(double x0, double y0, MyNode a) {
 		double[] n1 = Toolkit.nodePosition(a);
 
 		return distance(x0, y0, n1[0], n1[1]);

+ 3 - 2
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/main/MainApp.java

@@ -87,8 +87,9 @@ public class MainApp extends Application {
 			}
 		}
 		OptionsManager.load();
-		CSSManager.addRule("node{text-alignment:at-right; size:15px;} "
-			+ "edge{text-offset: 4px,-4px;} edge.selected{fill-color: #FF0000;}");
+		CSSManager.addRule("node{text-alignment:at-right; size:15px;} \n"
+			+ "edge{text-offset: 4px,-4px;} edge.selected{fill-color: #FF0000;}"+"node.standard{shape: diamond;}" + "node.source{shape: triangle;}"
+			+ "node.procEn{shape: circle;}" + "node.sink{shape: box;}" + "node.operator{shape: diamond;}");
 	}
 
 	/**

+ 15 - 16
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/BasicMappingOperator.java

@@ -4,11 +4,10 @@ import java.util.Comparator;
 import java.util.Iterator;
 import java.util.LinkedList;
 
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MappingGraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphOperator;
 
@@ -26,15 +25,15 @@ public class BasicMappingOperator implements ScopvizGraphOperator {
 		}
 
 		// find the Nodes that have to be mapped and where they can be mapped to
-		LinkedList<Node> operatorNodes = getOperatorNodes(map);
-		LinkedList<Node> procEnNodes = getProcEnNodes(map);
+		LinkedList<MyNode> operatorNodes = getOperatorNodes(map);
+		LinkedList<MyNode> procEnNodes = getProcEnNodes(map);
 
 		// Map the Nodes (beginning with the operatorNode with the highest
 		// Processing requirement)
 		operatorNodes.sort(operatorComparator);
-		Iterator<Node> procEnIterator;
+		Iterator<MyNode> procEnIterator;
 		Boolean successfull;
-		for (Node n : operatorNodes) {
+		for (MyNode n : operatorNodes) {
 			procEnIterator = procEnNodes.iterator();
 			successfull = false;
 			while (procEnIterator.hasNext() && !successfull) {
@@ -52,11 +51,11 @@ public class BasicMappingOperator implements ScopvizGraphOperator {
 		return "Basic Automapping";
 	}
 
-	protected LinkedList<Node> getProcEnNodes(GraphManager g) {
-		LinkedList<Node> result = new LinkedList<Node>();
-		Iterator<Node> nodeIter = g.getGraph().getNodeIterator();
+	protected LinkedList<MyNode> getProcEnNodes(GraphManager g) {
+		LinkedList<MyNode> result = new LinkedList<MyNode>();
+		Iterator<MyNode> nodeIter = g.getGraph().getNodeIterator();
 		while (nodeIter.hasNext()) {
-			Node n = nodeIter.next();
+			MyNode n = nodeIter.next();
 			if ("procEn".equals(n.getAttribute("typeofNode"))) {
 				result.add(n);
 			}
@@ -64,11 +63,11 @@ public class BasicMappingOperator implements ScopvizGraphOperator {
 		return result;
 	}
 
-	protected LinkedList<Node> getOperatorNodes(GraphManager g) {
-		LinkedList<Node> result = new LinkedList<Node>();
-		Iterator<Node> nodeIter = g.getGraph().getNodeIterator();
+	protected LinkedList<MyNode> getOperatorNodes(GraphManager g) {
+		LinkedList<MyNode> result = new LinkedList<MyNode>();
+		Iterator<MyNode> nodeIter = g.getGraph().getNodeIterator();
 		while (nodeIter.hasNext()) {
-			Node n = nodeIter.next();
+			MyNode n = nodeIter.next();
 			if ("operator".equals(n.getAttribute("typeofNode"))) {
 				result.add(n);
 			}
@@ -76,10 +75,10 @@ public class BasicMappingOperator implements ScopvizGraphOperator {
 		return result;
 	}
 
-	protected Comparator<Node> operatorComparator = new Comparator<Node>() {
+	protected Comparator<MyNode> operatorComparator = new Comparator<MyNode>() {
 
 		@Override
-		public int compare(Node o1, Node o2) {
+		public int compare(MyNode o1, MyNode o2) {
 			Main m = Main.getInstance();
 
 			// the cmparator uses a reverse ordering so that the resulting list

+ 9 - 9
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/CommunicationCostMetric.java

@@ -5,12 +5,12 @@ import java.util.stream.Collectors;
 
 import org.graphstream.algorithm.Dijkstra;
 import org.graphstream.algorithm.Toolkit;
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MappingGraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphMetric;
 import javafx.util.Pair;
 
@@ -63,13 +63,13 @@ public class CommunicationCostMetric implements ScopvizGraphMetric {
 		}
 
 		MyGraph operator = new MyGraph("opWithTime");
-		for (Node n : g.getNodeSet()) {
+		for (MyNode n : g.<MyNode>getNodeSet()) {
 			if (n.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING_PARENT) == MappingGraphManager.OPERATOR) {
 				operator.addNode(n.getId());
 			}
 
 		}
-		for (Edge e : g.getEdgeSet()) {
+		for (MyEdge e : g.<MyEdge>getEdgeSet()) {
 			if (e.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING_PARENT) == MappingGraphManager.OPERATOR) {
 				String newID = e.getId();
 				double cost = computeCost(e.getNode0(), e.getNode1(), g);
@@ -100,15 +100,15 @@ public class CommunicationCostMetric implements ScopvizGraphMetric {
 	 *            the combined mapping graph
 	 * @return the cost
 	 */
-	private double computeCost(Node n1, Node n2, MyGraph g) {
+	private double computeCost(MyNode n1, MyNode n2, MyGraph g) {
 		double cost = 0;
 		// find the underlay nodes that the operator nodes are mapped to
-		LinkedList<Edge> mappingEdges = new LinkedList<Edge>(g.getEdgeSet().stream()
+		LinkedList<MyEdge> mappingEdges = new LinkedList<MyEdge>(g.<MyEdge>getEdgeSet().stream()
 				.filter(e -> (((Boolean) e.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING)) == true))
 				.collect(Collectors.toList()));
-		Node target1 = null;
-		Node target2 = null;
-		for (Edge e : mappingEdges) {
+		MyNode target1 = null;
+		MyNode target2 = null;
+		for (MyEdge e : mappingEdges) {
 			if (e.getNode0() == n1) {
 				target1 = e.getNode1();
 			} else if (e.getNode0() == n2) {

+ 7 - 8
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/OperatorInfoMetric.java

@@ -3,11 +3,10 @@ package de.tu_darmstadt.informatik.tk.scopviz.metrics;
 import java.util.LinkedList;
 import java.util.stream.Collectors;
 
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MappingGraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphMetric;
 import javafx.util.Pair;
@@ -65,12 +64,12 @@ public class OperatorInfoMetric implements ScopvizGraphMetric {
 	 */
 	private boolean fullyPlaced(MyGraph operator, MyGraph mapping) {
 		boolean result = true;
-		LinkedList<Edge> mappingEdges = new LinkedList<Edge>(mapping.getEdgeSet().stream()
+		LinkedList<MyEdge> mappingEdges = new LinkedList<MyEdge>(mapping.<MyEdge>getEdgeSet().stream()
 				.filter(e -> (((Boolean) e.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING)) == true))
 				.collect(Collectors.toList()));
 		// build list of the operator nodes within the mapping graph
-		LinkedList<Node> operatorNodes = new LinkedList<Node>();
-		for (Node n : mapping.getNodeSet()) {
+		LinkedList<MyNode> operatorNodes = new LinkedList<MyNode>();
+		for (MyNode n : mapping.<MyNode>getNodeSet()) {
 			String originalGraph = n.getAttribute("originalGraph");
 			if ((originalGraph != null && originalGraph.equals(operator.getId()))
 					|| n.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING_PARENT_ID).equals(operator.getId())) {
@@ -78,9 +77,9 @@ public class OperatorInfoMetric implements ScopvizGraphMetric {
 			}
 		}
 		// check if they have a mapping
-		for (Node n : operatorNodes) {
+		for (MyNode n : operatorNodes) {
 			boolean isMapped = false;
-			for (Edge e : mappingEdges) {
+			for (MyEdge e : mappingEdges) {
 				if (e.getNode0().getId().equals(n.getId())) {
 					isMapped = true;
 				}

+ 5 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/PlacementCostMetric.java

@@ -7,12 +7,11 @@ import java.util.Arrays;
 import java.util.LinkedList;
 import java.util.stream.Collectors;
 
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MappingGraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphMetric;
 import javafx.stage.FileChooser;
@@ -109,10 +108,10 @@ public class PlacementCostMetric implements ScopvizGraphMetric {
 		if (!setupDone) {
 			results.add(SETUP_NEEDED);
 		} else {
-			LinkedList<Edge> mappingEdges = new LinkedList<Edge>(g.getEdgeSet().stream()
+			LinkedList<MyEdge> mappingEdges = new LinkedList<MyEdge>(g.<MyEdge>getEdgeSet().stream()
 					.filter(e -> (((Boolean) e.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING)) == true))
 					.collect(Collectors.toList()));
-			for (Edge e : mappingEdges) {
+			for (MyEdge e : mappingEdges) {
 				placementCostSum += placementCost(e.getNode0(), e.getNode1());
 			}
 			results.add(new Pair<String, String>("Overall Cost", "" + placementCostSum));
@@ -179,7 +178,7 @@ public class PlacementCostMetric implements ScopvizGraphMetric {
 	 *            The Underlay node it is mapped to
 	 * @return The placement cost
 	 */
-	private double placementCost(Node operator, Node target) {
+	private double placementCost(MyNode operator, MyNode target) {
 		if (costs == null) {
 			Debug.out(
 					"Tried to read Costs from nonexistant Cost Matrix. Please run Setup before trying to Compute the Metric!");

+ 7 - 8
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/TaskFulfillmentMetric.java

@@ -3,11 +3,10 @@ package de.tu_darmstadt.informatik.tk.scopviz.metrics;
 import java.util.LinkedList;
 import java.util.stream.Collectors;
 
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MappingGraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphMetric;
 import javafx.util.Pair;
@@ -87,12 +86,12 @@ public class TaskFulfillmentMetric implements ScopvizGraphMetric {
 	 */
 	private boolean fullyPlaced(MyGraph operator, MyGraph mapping) {
 		boolean result = true;
-		LinkedList<Edge> mappingEdges = new LinkedList<Edge>(mapping.getEdgeSet().stream()
+		LinkedList<MyEdge> mappingEdges = new LinkedList<MyEdge>(mapping.<MyEdge>getEdgeSet().stream()
 				.filter(e -> (((Boolean) e.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING)) == true))
 				.collect(Collectors.toList()));
 		// build list of the operator nodes within the mapping graph
-		LinkedList<Node> operatorNodes = new LinkedList<Node>();
-		for (Node n : mapping.getNodeSet()) {
+		LinkedList<MyNode> operatorNodes = new LinkedList<MyNode>();
+		for (MyNode n : mapping.<MyNode>getNodeSet()) {
 			String originalGraph = n.getAttribute("originalGraph");
 			if ((originalGraph != null && originalGraph.equals(operator.getId()))
 					|| n.getAttribute(MappingGraphManager.ATTRIBUTE_KEY_MAPPING_PARENT_ID).equals(operator.getId())) {
@@ -100,9 +99,9 @@ public class TaskFulfillmentMetric implements ScopvizGraphMetric {
 			}
 		}
 		// check if they have a mapping
-		for (Node n : operatorNodes) {
+		for (MyNode n : operatorNodes) {
 			boolean isMapped = false;
-			for (Edge e : mappingEdges) {
+			for (MyEdge e : mappingEdges) {
 				if (e.getNode0().getId().equals(n.getId())) {
 					isMapped = true;
 				}

+ 2 - 3
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/metrics/TestOperator.java

@@ -2,16 +2,15 @@ package de.tu_darmstadt.informatik.tk.scopviz.metrics;
 
 import java.util.Iterator;
 
-import org.graphstream.graph.Node;
-
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.metrics.interfaces.ScopvizGraphOperator;
 
 public class TestOperator implements ScopvizGraphOperator {
 
 	@Override
 	public void calculate(GraphManager g) {
-		Iterator<Node> nodeIter = g.getGraph().getNodeIterator();
+		Iterator<MyNode> nodeIter = g.getGraph().getNodeIterator();
 		while (nodeIter.hasNext()) {
 			nodeIter.next().addAttribute("ui.style", "fill-color: blue;");
 		}

+ 9 - 9
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/PropertiesManager.java

@@ -6,13 +6,13 @@ import java.util.HashSet;
 import java.util.LinkedList;
 import java.util.Optional;
 
-import org.graphstream.graph.Edge;
 import org.graphstream.graph.Element;
-import org.graphstream.graph.Node;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphHelper;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import javafx.application.Platform;
@@ -264,11 +264,11 @@ public final class PropertiesManager {
 		String eid = Main.getInstance().getGraphManager().getSelectedEdgeID();
 
 		if (nid != null) {
-			Node selectedNode = Main.getInstance().getGraphManager().getGraph().getNode(nid);
+			MyNode selectedNode = Main.getInstance().getGraphManager().getGraph().getNode(nid);
 			showNewDataSet(selectedNode);
 
 		} else if (eid != null) {
-			Edge selectedEdge = Main.getInstance().getGraphManager().getGraph().getEdge(eid);
+			MyEdge selectedEdge = Main.getInstance().getGraphManager().getGraph().getEdge(eid);
 			showNewDataSet(selectedEdge);
 
 		} else {
@@ -304,7 +304,7 @@ public final class PropertiesManager {
 			// filter out or change attributes added by graphstream that are of
 			// no use to the user
 			case "ui.label":
-				if (selected instanceof Node) {
+				if (selected instanceof MyNode) {
 					Object actualAttribute = selected.getAttribute(key);
 					// replace UI Label with ID"
 					key = "ID";
@@ -312,7 +312,7 @@ public final class PropertiesManager {
 				}
 				break;
 			case "weight":
-				if (selected instanceof Edge
+				if (selected instanceof MyEdge
 						&& Layer.OPERATOR == Main.getInstance().getGraphManager().getGraph().getAttribute("layer")) {
 					break;
 				}
@@ -322,7 +322,7 @@ public final class PropertiesManager {
 				}
 				break;
 			case "process-need":
-				if (selected instanceof Node
+				if (selected instanceof MyNode
 						&& Layer.UNDERLAY == Main.getInstance().getGraphManager().getGraph().getAttribute("layer")) {
 					break;
 				}
@@ -332,12 +332,12 @@ public final class PropertiesManager {
 				}
 				break;
 			case "process-max":
-				if (selected instanceof Node
+				if (selected instanceof MyNode
 						&& Layer.OPERATOR == Main.getInstance().getGraphManager().getGraph().getAttribute("layer")) {
 					break;
 				}
 			case "typeOfDevice":
-				if (selected instanceof Node
+				if (selected instanceof MyNode
 						&& Layer.OPERATOR == Main.getInstance().getGraphManager().getGraph().getAttribute("layer")) {
 					break;
 				}

+ 3 - 4
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/ToolboxManager.java

@@ -2,9 +2,8 @@ package de.tu_darmstadt.informatik.tk.scopviz.ui;
 
 import java.util.Optional;
 
-import org.graphstream.graph.Edge;
-
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphHelper;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.main.CreationMode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
 import de.tu_darmstadt.informatik.tk.scopviz.main.MainApp;
@@ -261,7 +260,7 @@ public final class ToolboxManager {
 	/**
 	 * the last edge that was created
 	 */
-	private static Edge lastCreatedEdge = null;
+	private static MyEdge lastCreatedEdge = null;
 
 	/**
 	 * opens a dialog that asks for a weight for a newly created Edge. The
@@ -270,7 +269,7 @@ public final class ToolboxManager {
 	 * @param e
 	 *            the new Edge that needs a weight
 	 */
-	public static void createWeightDialog(Edge e) {
+	public static void createWeightDialog(MyEdge e) {
 		if (e.equals(lastCreatedEdge)) {
 			return;
 		}

+ 4 - 4
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/handlers/MyMouseManager.java

@@ -2,8 +2,6 @@ package de.tu_darmstadt.informatik.tk.scopviz.ui.handlers;
 
 import java.awt.event.MouseEvent;
 
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
 import org.graphstream.ui.geom.Point3;
 import org.graphstream.ui.graphicGraph.GraphicElement;
 import org.graphstream.ui.view.Camera;
@@ -11,7 +9,9 @@ import org.graphstream.ui.view.util.DefaultMouseManager;
 
 import de.tu_darmstadt.informatik.tk.scopviz.debug.Debug;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyGraph;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.CreationMode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.EdgeSelectionHelper;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Main;
@@ -70,9 +70,9 @@ public class MyMouseManager extends DefaultMouseManager {
 		view.requestFocus();
 
 		Point3 cursorPos = graphManager.getView().getCamera().transformPxToGu(event.getX(), event.getY());
-		Node n;
+		MyNode n;
 		MyGraph nodeProducer = new MyGraph("temp");
-		Edge selectedEdge = EdgeSelectionHelper.getClosestEdge(cursorPos);
+		MyEdge selectedEdge = EdgeSelectionHelper.getClosestEdge(cursorPos);
 
 		switch (Main.getInstance().getCreationMode()) {
 

+ 6 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/CustomMapClickListener.java

@@ -4,11 +4,11 @@ import java.awt.geom.Line2D;
 import java.awt.geom.Point2D;
 import java.util.HashSet;
 
-import org.graphstream.graph.Edge;
 import org.jxmapviewer.JXMapViewer;
 import org.jxmapviewer.input.MapClickListener;
 import org.jxmapviewer.viewer.GeoPosition;
 
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
 import de.tu_darmstadt.informatik.tk.scopviz.main.EdgeSelectionHelper;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.ui.GraphDisplayManager;
@@ -29,12 +29,12 @@ public class CustomMapClickListener extends MapClickListener {
 	/*
 	 * selected edge
 	 */
-	public static Edge selectedEdge;
+	public static MyEdge selectedEdge;
 
 	/*
 	 * all edges of the graph
 	 */
-	private final static HashSet<Edge> edges = WorldView.edges;
+	private final static HashSet<MyEdge> edges = WorldView.edges;
 
 	/*
 	 * all waypoints of the graph
@@ -122,9 +122,9 @@ public class CustomMapClickListener extends MapClickListener {
 		// max distance between clicked point and edge to select edge
 		double maxDistance = 10.0;
 
-		Edge result = null;
+		MyEdge result = null;
 
-		for (Edge edge : CustomMapClickListener.edges) {
+		for (MyEdge edge : CustomMapClickListener.edges) {
 			// Get geo Positions of the two nodes that define the edge
 			GeoPosition startPos = new GeoPosition(edge.getNode0().getAttribute("lat"),
 					edge.getNode0().getAttribute("long"));
@@ -190,7 +190,7 @@ public class CustomMapClickListener extends MapClickListener {
 	 * 
 	 * @param edge
 	 */
-	public static void selectEdge(Edge edge) {
+	public static void selectEdge(MyEdge edge) {
 
 		PropertiesManager.showNewDataSet(edge);
 

+ 7 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/EdgePainter.java

@@ -9,11 +9,12 @@ import java.awt.RenderingHints;
 import java.awt.geom.Point2D;
 import java.util.HashSet;
 
-import org.graphstream.graph.Edge;
 import org.jxmapviewer.JXMapViewer;
 import org.jxmapviewer.painter.Painter;
 import org.jxmapviewer.viewer.GeoPosition;
 
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
+
 /**
  * Paints a route
  * 
@@ -54,7 +55,7 @@ public class EdgePainter implements Painter<JXMapViewer> {
 	/**
 	 * the edges of the currently shown graph
 	 */
-	private static HashSet<Edge> edges;
+	private static HashSet<MyEdge> edges;
 
 	/**
 	 * show weights property
@@ -65,10 +66,10 @@ public class EdgePainter implements Painter<JXMapViewer> {
 	 * @param track
 	 *            the track
 	 */
-	public EdgePainter(HashSet<Edge> track) {
+	public EdgePainter(HashSet<MyEdge> track) {
 		// copy the list so that changes in the
 		// original list do not have an effect here
-		edges = new HashSet<Edge>(track);
+		edges = new HashSet<MyEdge>(track);
 	}
 
 	@Override
@@ -104,7 +105,7 @@ public class EdgePainter implements Painter<JXMapViewer> {
 	 */
 	private void drawRoute(Graphics2D g, JXMapViewer mapViewer) {
 
-		for (Edge edge : edges) {
+		for (MyEdge edge : edges) {
 
 			// Get geo Positions of the two nodes that define the edge
 			GeoPosition startPos = new GeoPosition(edge.getNode0().getAttribute("lat"),
@@ -149,7 +150,7 @@ public class EdgePainter implements Painter<JXMapViewer> {
 	 * @param endPoint
 	 *            end point edge
 	 */
-	private void drawWeights(Edge edge, Graphics2D g, Point2D startPoint, Point2D endPoint) {
+	private void drawWeights(MyEdge edge, Graphics2D g, Point2D startPoint, Point2D endPoint) {
 		// Set weight Position on street map
 		String weight = edge.getAttribute("weight").toString();
 

+ 6 - 6
scopviz/src/main/java/de/tu_darmstadt/informatik/tk/scopviz/ui/mapView/WorldView.java

@@ -9,8 +9,6 @@ import java.util.ArrayList;
 import java.util.HashSet;
 import java.util.List;
 
-import org.graphstream.graph.Edge;
-import org.graphstream.graph.Node;
 import org.jxmapviewer.JXMapViewer;
 import org.jxmapviewer.OSMTileFactoryInfo;
 import org.jxmapviewer.painter.CompoundPainter;
@@ -20,6 +18,8 @@ import org.jxmapviewer.viewer.TileFactoryInfo;
 import org.jxmapviewer.viewer.WaypointPainter;
 
 import de.tu_darmstadt.informatik.tk.scopviz.graphs.GraphManager;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyEdge;
+import de.tu_darmstadt.informatik.tk.scopviz.graphs.MyNode;
 import de.tu_darmstadt.informatik.tk.scopviz.main.Layer;
 import de.tu_darmstadt.informatik.tk.scopviz.main.MainApp;
 import de.tu_darmstadt.informatik.tk.scopviz.ui.GUIController;
@@ -66,7 +66,7 @@ public class WorldView {
 	/*
 	 * All edges in the WorldView
 	 */
-	public static HashSet<Edge> edges;
+	public static HashSet<MyEdge> edges;
 
 	public static HashSet<GeoPosition> nodePositions;
 
@@ -101,7 +101,7 @@ public class WorldView {
 
 		nodePositions = new HashSet<GeoPosition>();
 		waypoints = new HashSet<CustomWaypoint>();
-		edges = new HashSet<Edge>();
+		edges = new HashSet<MyEdge>();
 		waypointsAsList = new ArrayList<CustomWaypoint>();
 
 		// Get GeoPositions of nodes and get all waypoints created
@@ -233,12 +233,12 @@ public class WorldView {
 		GraphManager man = GraphDisplayManager.getGraphManager(Layer.UNDERLAY);
 
 		// add all edges from the Graph to the HashSet
-		for (Edge edge : man.getGraph().getEdgeSet()) {
+		for (MyEdge edge : man.getGraph().<MyEdge>getEdgeSet()) {
 			edges.add(edge);
 		}
 
 		// fetch all needed data from nodes
-		for (Node node : man.getGraph().getEachNode()) {
+		for (MyNode node : man.getGraph().<MyNode>getEachNode()) {
 
 			if (node.hasAttribute("lat") && node.hasAttribute("long")) {