X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.diagram%2Fsrc%2Forg%2Fsimantics%2Fdiagram%2Fparticipant%2FConnectionBuilder.java;h=8da84709b6ee89be5dd29c9ee53697e9ca7a51a0;hb=99174cb4476954c91687ff5625227e91bdee9e67;hp=72cdb17524fa3def3ae8acc771836153590ffcfe;hpb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.diagram/src/org/simantics/diagram/participant/ConnectionBuilder.java b/bundles/org.simantics.diagram/src/org/simantics/diagram/participant/ConnectionBuilder.java index 72cdb1752..8da84709b 100644 --- a/bundles/org.simantics.diagram/src/org/simantics/diagram/participant/ConnectionBuilder.java +++ b/bundles/org.simantics.diagram/src/org/simantics/diagram/participant/ConnectionBuilder.java @@ -79,7 +79,6 @@ import org.simantics.structural2.modelingRules.CPTerminal; import org.simantics.structural2.modelingRules.ConnectionJudgement; import org.simantics.structural2.modelingRules.IConnectionPoint; import org.simantics.structural2.modelingRules.IModelingRules; -import org.simantics.utils.datastructures.Callback; import org.simantics.utils.datastructures.Pair; import org.simantics.utils.ui.ErrorLogger; @@ -222,12 +221,9 @@ public class ConnectionBuilder { } } } - }, new Callback() { - @Override - public void run(DatabaseException e) { - if (e != null) - ErrorLogger.defaultLogError(e); - } + }, e -> { + if (e != null) + ErrorLogger.defaultLogError(e); }); } } @@ -501,7 +497,7 @@ public class ConnectionBuilder { Connector endConnector = null; if (endTerminal != null) { - endConnector = createConnectorForNode(graph, attachToConnection, endTerminal, EdgeEnd.End, judgment); + endConnector = createConnectorForNode(graph, attachToConnection, endTerminal, flagType == FlagClass.Type.In ? EdgeEnd.Begin : EdgeEnd.End, judgment); } else if (createFlags) { EdgeEnd end = flagType == FlagClass.Type.In ? EdgeEnd.Begin : EdgeEnd.End; IElement endFlag = createFlag(graph, attachToConnection, end, controlPoints.getLast(), flagType, null); @@ -767,7 +763,9 @@ public class ConnectionBuilder { EdgeEnd end, ConnectionJudgement judgment) throws DatabaseException { IConnectionPoint cp = ConnectionUtil.toConnectionPoint(graph, element, terminal); CPTerminal cpt = (cp instanceof CPTerminal) ? (CPTerminal) cp : null; - Resource attachment = judgment.attachmentRelations.get(graph, cpt); + Resource attachment = null; + if (judgment.attachmentRelations != null) + attachment = judgment.attachmentRelations.get(graph, cpt); if (attachment == null) attachment = cu.toHasConnectorRelation(end); Resource connector = cu.getOrCreateConnector(connection, element, terminal, end, attachment);