]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.diagram/src/org/simantics/diagram/profile/StyleBase.java
Merge "Multiple reader thread support for db client"
[simantics/platform.git] / bundles / org.simantics.diagram / src / org / simantics / diagram / profile / StyleBase.java
index 5aed90b48931b2a15bb911b0986860d96e01481f..21071ba74bd9453e9c3bdf166c0240bd46156c54 100644 (file)
@@ -47,7 +47,6 @@ import org.simantics.scenegraph.profile.impl.DebugPolicy;
 import org.simantics.scl.runtime.tuple.Tuple;
 import org.simantics.scl.runtime.tuple.Tuple2;
 import org.simantics.utils.datastructures.Pair;
-import org.simantics.utils.threads.AWTThread;
 
 /**
  * For most style implementations it should be enough to override the following
@@ -298,7 +297,7 @@ public abstract class StyleBase<Result> implements Style {
      * @see org.simantics.diagram.profile.Style#activate(org.simantics.db.RequestProcessor, org.simantics.db.Resource, org.simantics.db.layer0.variable.Variable, org.simantics.diagram.profile.Group, org.simantics.diagram.profile.Observer)
      */
     @Override
-    public final void activate(RequestProcessor backend, final Resource runtimeDiagram, final Resource entry, final Group group, final EvaluationContext observer) {
+    public final void activate(RequestProcessor backend, final Resource runtimeDiagram, final Resource entry, final Group group, final EvaluationContext observer) throws DatabaseException {
 
         ObserverGroupListener listener = getListener(runtimeDiagram, group);
 
@@ -457,7 +456,11 @@ public abstract class StyleBase<Result> implements Style {
      * @param items the diagram data items that need to be cleaned up
      */
     protected final void cleanupItems(final EvaluationContext evaluationContext, final IDiagram diagram, final Object[] items) {
-        AWTThread.getThreadAccess().asyncExec(new Runnable() {
+
+        ICanvasContext context = evaluationContext.getConstant(ProfileKeys.CANVAS);
+
+       context.getThreadAccess().asyncExec(new Runnable() {
+               
             @Override
             public void run() {