X-Git-Url: http://wamblee.org/gitweb/?a=blobdiff_plain;f=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fgraph%2Fcomponent%2FComponentGraph.java;fp=system%2Fgeneral%2Fsrc%2Fmain%2Fjava%2Forg%2Fwamblee%2Fsystem%2Fgraph%2Fcomponent%2FComponentGraph.java;h=b41c41c81445d277165fed2eb7f44414b224d944;hb=f4b445472d52e99b308d7c1c1f6d3a53b3afddda;hp=008f0026c1127750598fcde2c5f5b296f299951c;hpb=db8ff5916d378aae57038356dbf2a3d2fbf9deff;p=utils diff --git a/system/general/src/main/java/org/wamblee/system/graph/component/ComponentGraph.java b/system/general/src/main/java/org/wamblee/system/graph/component/ComponentGraph.java index 008f0026..b41c41c8 100644 --- a/system/general/src/main/java/org/wamblee/system/graph/component/ComponentGraph.java +++ b/system/general/src/main/java/org/wamblee/system/graph/component/ComponentGraph.java @@ -36,12 +36,14 @@ import org.wamblee.system.graph.Node; */ public class ComponentGraph extends Graph { + private boolean _isLinked; private CompositeEdgeFilter _edgeFilter; /** * Constructs an empty component graph. */ public ComponentGraph() { + _isLinked = false; _edgeFilter = new CompositeEdgeFilter(); } @@ -82,8 +84,12 @@ public class ComponentGraph extends Graph { * Links provided and required interfaces together in the component * model based on the graph model. */ - public void link() { + public void link() { + if ( _isLinked ) { + return; + } accept(new LinkVisitor()); + _isLinked = true; } /**