]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/synchronization/graph/ModificationQueue.java
Support VirtualGraph in GraphToDiagramSynchronizer and DiagramSGProvider
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / synchronization / graph / ModificationQueue.java
index 0e74431bd5d2d34ab676181d67eb6e7580b17d86..27b40c79d36c0de07e82670968efe8f1798a16ff 100644 (file)
@@ -15,6 +15,7 @@ import java.util.ArrayDeque;
 import java.util.Deque;
 
 import org.simantics.db.RequestProcessor;
+import org.simantics.db.VirtualGraph;
 import org.simantics.diagram.internal.DebugPolicy;
 import org.simantics.diagram.synchronization.ErrorHandler;
 import org.simantics.diagram.synchronization.IModification;
@@ -31,14 +32,23 @@ public class ModificationQueue implements IModificationQueue {
     private final RequestProcessor     writebackProcessor;
     private final ErrorHandler         errorHandler;
     private final Deque<IModification> writebackQueue = new ArrayDeque<IModification>();
-
+    private final VirtualGraph virtualGraph;
+    
     public ModificationQueue(RequestProcessor writebackProcessor, ErrorHandler errorHandler) {
         this.writebackProcessor = writebackProcessor;
         this.errorHandler = errorHandler;
+        this.virtualGraph = null;
+    }
+    
+    public ModificationQueue(RequestProcessor writebackProcessor, ErrorHandler errorHandler, VirtualGraph virtualGraph) {
+        this.writebackProcessor = writebackProcessor;
+        this.errorHandler = errorHandler;
+        this.virtualGraph = virtualGraph;
     }
 
     public void dispose() {
     }
+    
 
     ModificationProcessRequest createModificationRequest() {
         IModification[] mods = IModification.NONE;
@@ -46,7 +56,7 @@ public class ModificationQueue implements IModificationQueue {
             mods = writebackQueue.toArray(IModification.NONE);
             writebackQueue.clear();
         }
-        return new ModificationProcessRequest(errorHandler, mods);
+        return new ModificationProcessRequest(errorHandler, mods, virtualGraph);
     }
 
     void dispatchModifications() {