]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/ReadEntry.java
Merge branch 'db-threads' into private/db-threads
[simantics/platform.git] / bundles / org.simantics.db.impl / src / org / simantics / db / impl / query / ReadEntry.java
index e4ff1ea874bb2c3b9f8e288d413eaedc49f51c51..edc32454929542ab76a0f4a51155559a52b22324 100644 (file)
@@ -97,7 +97,7 @@ final public class ReadEntry<T> extends CacheEntryBase {
 
                        @Override
                        public void removeEntry(QueryProcessor processor) {
-                               processor.readMap.remove(request);
+                               processor.cache.readMap.remove(request);
                        }
 
                        @Override
@@ -119,28 +119,28 @@ final public class ReadEntry<T> extends CacheEntryBase {
         
     }
     
-       public void performFromCache(ReadGraphImpl graph, Object provider,      Object procedure) {
+       public Object performFromCache(ReadGraphImpl graph, Object provider,    Object procedure) {
            
         AsyncProcedure<T> proc = (AsyncProcedure<T>)procedure;
 
-           if(isExcepted()) {
-
-            try {
-                proc.exception(graph, (Throwable)getResult());
-            } catch (Throwable t) {
-                t.printStackTrace();
-            }
-               
-           } else {
-               
-            try {
-                proc.execute(graph, (T)getResult());
-            } catch (Throwable t) {
-                t.printStackTrace();
-            }
-
-           }
+        if(proc != null) {
+               if(isExcepted()) {
+                       try {
+                               proc.exception(graph, (Throwable)getResult());
+                       } catch (Throwable t) {
+                               t.printStackTrace();
+                       }
+               } else {
+                       try {
+                               proc.execute(graph, (T)getResult());
+                       } catch (Throwable t) {
+                               t.printStackTrace();
+                       }
+               }
+        }
                
+           return (T)getResult();
+           
        }
        
        @Override