public Link<T> addLink(String relationName,GraphNode<T> node) {\r
_checkDisposed();\r
if(containsLink(relationName, node)) {\r
public Link<T> addLink(String relationName,GraphNode<T> node) {\r
_checkDisposed();\r
if(containsLink(relationName, node)) {\r
public Link<T> addLink(Link<T> link ,GraphNode<T> node) {\r
_checkDisposed();\r
if(containsLink(link.getName(), node) && node.containsLink(link.getInverseName(), this)) {\r
public Link<T> addLink(Link<T> link ,GraphNode<T> node) {\r
_checkDisposed();\r
if(containsLink(link.getName(), node) && node.containsLink(link.getInverseName(), this)) {\r
if (nodes.size() == 1) {\r
Link<T> link = nodes.get(0);\r
link.to().removeLink(link.getInverseName(), link.getName(), this);\r
} else {\r
for (int i = 0; i < nodes.size() -1 ; i++) {\r
Link<T> link1 = nodes.get(i);\r
if (nodes.size() == 1) {\r
Link<T> link = nodes.get(0);\r
link.to().removeLink(link.getInverseName(), link.getName(), this);\r
} else {\r
for (int i = 0; i < nodes.size() -1 ; i++) {\r
Link<T> link1 = nodes.get(i);\r
- link1.to().removeLink(link1.getInverseName(), link1.getName(), this);\r
- for (int j = i; j < nodes.size(); j++) {\r
+ link1.to()._removeLink(link1.getInverseName(), link1.getName(), this);\r
+ for (int j = i+1; j < nodes.size(); j++) {\r
if (link1.to().equals(link2.to()))\r
continue;\r
link1.to().addLink(link1.getInverseName(),link2.getInverseName(),link2.to());\r
if (link1.to().equals(link2.to()))\r
continue;\r
link1.to().addLink(link1.getInverseName(),link2.getInverseName(),link2.to());\r