]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/adapter/FlagClassFactory.java
Configurable prefix and suffix text for monitors
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / adapter / FlagClassFactory.java
index 56c2ceef42ae172e53f5aae6624e568bd9f23d13..94acc5116451a805d3e67cbf42f21809e47a9a46 100644 (file)
@@ -33,6 +33,7 @@ import org.simantics.db.Resource;
 import org.simantics.db.Session;
 import org.simantics.db.WriteGraph;
 import org.simantics.db.common.procedure.adapter.TransientCacheListener;
+import org.simantics.db.common.procedure.guarded.GuardedAsyncProcedureWrapper;
 import org.simantics.db.common.request.ResourceRead;
 import org.simantics.db.common.request.TernaryRead;
 import org.simantics.db.common.request.WriteRequest;
@@ -103,6 +104,14 @@ public class FlagClassFactory extends SyncElementFactory {
         procedure.execute(graph, createFlagClass(DIA.Flag, DIA.Flag_Terminal));
     }
 
+    @Override
+    public void load(AsyncReadGraph graph, final ICanvasContext canvas, final IDiagram diagram,
+            final Resource elementResource, final IElement element, final AsyncProcedure<IElement> procedure) {
+        GuardedAsyncProcedureWrapper<IElement> guard = new GuardedAsyncProcedureWrapper<IElement>(procedure, 2);
+        super.load(graph, canvas, diagram, elementResource, element, guard);
+        ElementFactoryUtil.loadLayersForElement(graph, diagram, element, elementResource, guard);
+    }
+
     @Override
     public void load(ReadGraph g, ICanvasContext canvas, IDiagram diagram, Resource flag, IElement e) throws DatabaseException {
         Layer0 l0 = g.getService(Layer0.class);