]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.modeling/src/org/simantics/modeling/typicals/SyncTypicalTemplatesToInstances.java
Don't abort typical sync on blocked template to instance connections
[simantics/platform.git] / bundles / org.simantics.modeling / src / org / simantics / modeling / typicals / SyncTypicalTemplatesToInstances.java
index 8a0b1ddbca77e0f81fd283d8445c715e8c2e5adb..09545ada8b473a45c49a2a54a1d5fc4a13b0cb6c 100644 (file)
@@ -554,8 +554,9 @@ public class SyncTypicalTemplatesToInstances extends WriteRequest {
                                        if(stm != null) {
                                                if(graph.isInstanceOf(connectionPoint, L0.FunctionalRelation)) {
                                                        if(!isSynchronizedConnector(graph, templateElement, stm.getObject())) {
                                        if(stm != null) {
                                                if(graph.isInstanceOf(connectionPoint, L0.FunctionalRelation)) {
                                                        if(!isSynchronizedConnector(graph, templateElement, stm.getObject())) {
-                                                               messageLog.add("\t\tABORTED: tried to connect to an already connected terminal " + NameUtils.getSafeName(graph, counterPartElement) + " " + NameUtils.getSafeName(graph, connectionPoint));
-                                                               return;
+                                                               messageLog.add("\t\tWARNING: skipping addition of template connection " + NameUtils.getSafeName(graph, templateElement, true) + " into instance.");
+                                                               messageLog.add("\t\t\ttried to connect to an already connected terminal " + NameUtils.getSafeName(graph, counterPartElement, true) + " " + NameUtils.getSafeName(graph, connectionPoint));
+                                                               templateElementsAddedToTemplate.remove(templateElement);
                                                        }
                                                }
                                                }
                                                        }
                                                }
                                                }
@@ -825,7 +826,7 @@ public class SyncTypicalTemplatesToInstances extends WriteRequest {
             Resource instanceElement = typicalInfo.bean.templateToInstance.get(changedTemplateElement);
             if (instanceElement == null) {
                 // There's an earlier problem in the sync process if this happens.
             Resource instanceElement = typicalInfo.bean.templateToInstance.get(changedTemplateElement);
             if (instanceElement == null) {
                 // There's an earlier problem in the sync process if this happens.
-               typicalInfo.messageLog.add("SKIPPING SYNC OF CHANGED TEMPLATE ELEMENT DUE TO MISSING INSTANCE: " + safeNameAndType(graph, getElementNameResource(graph, changedTemplateElement)));
+               typicalInfo.messageLog.add("\t\tSKIPPING SYNC OF CHANGED TEMPLATE ELEMENT DUE TO MISSING INSTANCE: " + safeNameAndType(graph, getElementNameResource(graph, changedTemplateElement)));
                 continue;
             }
             
                 continue;
             }