-package org.simantics.modeling.migration;\r
-\r
-import org.eclipse.core.runtime.IProgressMonitor;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.Session;\r
-import org.simantics.db.WriteGraph;\r
-import org.simantics.db.common.request.DelayedWriteRequest;\r
-import org.simantics.db.common.utils.NameUtils;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.migration.MigrationState;\r
-import org.simantics.db.layer0.migration.MigrationStep;\r
-import org.simantics.db.layer0.migration.MigrationUtils;\r
-import org.simantics.db.layer0.util.Layer0Utils;\r
-import org.simantics.layer0.Layer0;\r
-import org.simantics.modeling.ModelingUtils;\r
-import org.simantics.simulation.ontology.SimulationResource;\r
-import org.simantics.utils.logging.TimeLogger;\r
-\r
-/**\r
- * Runs\r
- * {@link ModelingUtils#attachCreationInformation(IProgressMonitor, WriteGraph, Resource)}\r
- * for all imported models.\r
- * \r
- * @author Tuukka Lehtonen\r
- */\r
-public enum AttachCreationInformationStep implements MigrationStep {\r
-\r
- INSTANCE;\r
-\r
- public static AttachCreationInformationStep get() {\r
- return INSTANCE;\r
- }\r
-\r
- @Override\r
- public void applyTo(final IProgressMonitor monitor, Session session, MigrationState state) throws DatabaseException {\r
- final Resource indexRoot = MigrationUtils.getResource(monitor, session, state);\r
- if (indexRoot == null)\r
- return;\r
-\r
- session.sync(new DelayedWriteRequest() {\r
- @Override\r
- public void perform(WriteGraph graph) throws DatabaseException {\r
- attach(monitor, graph, indexRoot);\r
- }\r
- });\r
- }\r
-\r
- private static void attach(IProgressMonitor monitor, WriteGraph graph, Resource indexRoot) throws DatabaseException {\r
- Layer0Utils.setDependenciesIndexingDisabled(graph, true);\r
- Layer0 L0 = Layer0.getInstance(graph);\r
- SimulationResource SIMU = SimulationResource.getInstance(graph);\r
- for (Resource model : graph.getObjects(indexRoot, L0.ConsistsOf)) {\r
- if (graph.isInstanceOf(model, SIMU.Model)) {\r
- TimeLogger.log(AttachCreationInformationStep.class, "attaching creation information to model " + NameUtils.getSafeName(graph, model));\r
- ModelingUtils.attachCreationInformation(monitor, graph, model);\r
- }\r
- }\r
- }\r
-\r
+package org.simantics.modeling.migration;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.simantics.db.Resource;
+import org.simantics.db.Session;
+import org.simantics.db.WriteGraph;
+import org.simantics.db.common.request.DelayedWriteRequest;
+import org.simantics.db.common.utils.NameUtils;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.migration.MigrationState;
+import org.simantics.db.layer0.migration.MigrationStep;
+import org.simantics.db.layer0.migration.MigrationUtils;
+import org.simantics.db.layer0.util.Layer0Utils;
+import org.simantics.layer0.Layer0;
+import org.simantics.modeling.ModelingUtils;
+import org.simantics.simulation.ontology.SimulationResource;
+import org.simantics.utils.logging.TimeLogger;
+
+/**
+ * Runs
+ * {@link ModelingUtils#attachCreationInformation(IProgressMonitor, WriteGraph, Resource)}
+ * for all imported models.
+ *
+ * @author Tuukka Lehtonen
+ */
+public enum AttachCreationInformationStep implements MigrationStep {
+
+ INSTANCE;
+
+ public static AttachCreationInformationStep get() {
+ return INSTANCE;
+ }
+
+ @Override
+ public void applyTo(final IProgressMonitor monitor, Session session, MigrationState state) throws DatabaseException {
+ final Resource indexRoot = MigrationUtils.getResource(monitor, session, state);
+ if (indexRoot == null)
+ return;
+
+ session.sync(new DelayedWriteRequest() {
+ @Override
+ public void perform(WriteGraph graph) throws DatabaseException {
+ attach(monitor, graph, indexRoot);
+ }
+ });
+ }
+
+ private static void attach(IProgressMonitor monitor, WriteGraph graph, Resource indexRoot) throws DatabaseException {
+ Layer0Utils.setDependenciesIndexingDisabled(graph, true);
+ Layer0 L0 = Layer0.getInstance(graph);
+ SimulationResource SIMU = SimulationResource.getInstance(graph);
+ for (Resource model : graph.getObjects(indexRoot, L0.ConsistsOf)) {
+ if (graph.isInstanceOf(model, SIMU.Model)) {
+ TimeLogger.log(AttachCreationInformationStep.class, "attaching creation information to model " + NameUtils.getSafeName(graph, model));
+ ModelingUtils.attachCreationInformation(monitor, graph, model);
+ }
+ }
+ }
+
}
\ No newline at end of file