]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.modeling/src/org/simantics/modeling/typicals/SyncTypicalTemplatesToInstances.java
Merge commit 'bf75fd9'
[simantics/platform.git] / bundles / org.simantics.modeling / src / org / simantics / modeling / typicals / SyncTypicalTemplatesToInstances.java
index 55f5aef3dabf1869b305b5376d14633abbcf9850..96a33393aeac5bab1c972d995cd1e0754a33ae71 100644 (file)
@@ -11,9 +11,6 @@
  *******************************************************************************/\r
 package org.simantics.modeling.typicals;\r
 \r
-import gnu.trove.map.hash.THashMap;\r
-import gnu.trove.set.hash.THashSet;\r
-\r
 import java.awt.geom.Point2D;\r
 import java.util.ArrayList;\r
 import java.util.Collection;\r
@@ -27,7 +24,6 @@ import java.util.Map;
 import java.util.Set;\r
 \r
 import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.simantics.Logger;\r
 import org.simantics.Simantics;\r
 import org.simantics.databoard.Bindings;\r
 import org.simantics.db.ReadGraph;\r
@@ -84,6 +80,11 @@ import org.simantics.utils.datastructures.MapSet;
 import org.simantics.utils.strings.AlphanumComparator;\r
 import org.simantics.utils.strings.EString;\r
 import org.simantics.utils.ui.ErrorLogger;\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+\r
+import gnu.trove.map.hash.THashMap;\r
+import gnu.trove.set.hash.THashSet;\r
 \r
 /**\r
  * A write request that synchronizes typical master templates and their\r
@@ -102,6 +103,7 @@ import org.simantics.utils.ui.ErrorLogger;
  * @see TypicalSynchronizationMetadata\r
  */\r
 public class SyncTypicalTemplatesToInstances extends WriteRequest {\r
+    private static final Logger LOGGER = LoggerFactory.getLogger(SyncTypicalTemplatesToInstances.class);\r
 \r
     /**\r
      * A constant used as the second argument to\r
@@ -210,6 +212,26 @@ public class SyncTypicalTemplatesToInstances extends WriteRequest {
 \r
        private boolean writeLog;\r
 \r
+    /**\r
+     * For SCL API.\r
+     * \r
+     * @param graph\r
+     * @param selectedRules\r
+     * @param templates\r
+     * @param instances\r
+     * @throws DatabaseException\r
+     */\r
+    public static void syncTypicals(WriteGraph graph, boolean log, List<Resource> templates, List<Resource> instances) throws DatabaseException {\r
+        graph.syncRequest(\r
+                new SyncTypicalTemplatesToInstances(\r
+                        null,\r
+                        templates.toArray(Resource.NONE),\r
+                        instances.toArray(Resource.NONE),\r
+                        ALL,\r
+                        null)\r
+                .logging(log));\r
+    }\r
+\r
     /**\r
      * @param templates typical diagram templates to completely synchronize with\r
      *        their instances\r
@@ -403,8 +425,7 @@ public class SyncTypicalTemplatesToInstances extends WriteRequest {
                 syncInstance(graph, template, instance, templateElements);\r
             }\r
         } catch (Exception e) {\r
-               Logger.defaultLogError(e);\r
-               e.printStackTrace();\r
+            LOGGER.error("Template synchronization failed.", e);\r
         } finally {\r
             this.temporaryDiagram.removeHint(DiagramModelHints.KEY_DIAGRAM_RESOURCE);\r
         }\r