]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/AssertedStatements.java
Merge branch 'master' into private/db-threads
[simantics/platform.git] / bundles / org.simantics.db.impl / src / org / simantics / db / impl / query / AssertedStatements.java
index 41b8e08d59486690543fd79494195c76395a01f9..d6d6fc08ad373bc9579de74bf55f4cdc760e1e76 100644 (file)
@@ -25,8 +25,6 @@ import org.simantics.db.request.RequestFlags;
 
 final public class AssertedStatements extends CollectionBinaryQuery<TripleIntProcedure> {
     
-//    public ArrayList<TripleIntProcedure> procs;
-    
     public AssertedStatements(final int r1, final int r2) {
         super(r1, r2);
     }
@@ -37,7 +35,7 @@ final public class AssertedStatements extends CollectionBinaryQuery<TripleIntPro
     
     final static AssertedStatements runner(ReadGraphImpl graph, final int r1, final int r2, final QueryProcessor provider, final AssertedStatements cached, final CacheEntry parent, final ListenerBase listener, final TripleIntProcedure procedure) {
         
-        AssertedStatements entry = cached != null ? cached : (AssertedStatements)provider.assertedStatementsMap.get(id(r1,r2)); 
+        AssertedStatements entry = cached != null ? cached : (AssertedStatements)provider.cache.assertedStatementsMap.get(id(r1,r2)); 
         if(entry == null) {
                
                entry = new AssertedStatements(r1, r2);
@@ -74,7 +72,7 @@ final public class AssertedStatements extends CollectionBinaryQuery<TripleIntPro
         assert(r1 != 0);
         assert(r2 != 0);
         
-        final AssertedStatements entry = (AssertedStatements)provider.assertedStatementsMap.get(id(r1,r2));
+        final AssertedStatements entry = (AssertedStatements)provider.cache.assertedStatementsMap.get(id(r1,r2));
         
         if(parent == null && !(listener != null)) {
             if(entry != null && entry.isReady()) { 
@@ -89,17 +87,17 @@ final public class AssertedStatements extends CollectionBinaryQuery<TripleIntPro
 
     @Override
     public BinaryQuery<TripleIntProcedure> getEntry(QueryProcessor provider) {
-        return provider.assertedStatementsMap.get(id);
+        return provider.cache.assertedStatementsMap.get(id);
     }
        
        @Override
        public void putEntry(QueryProcessor provider) {
-        provider.assertedStatementsMap.put(id, this);
+        provider.cache.assertedStatementsMap.put(id, this);
        }
 
        @Override
        final public void removeEntry(QueryProcessor provider) {
-           provider.assertedStatementsMap.remove(id);
+           provider.cache.assertedStatementsMap.remove(id);
        }
        
        void computeInheritedAssertions(ReadGraphImpl graph, int type, final int predicate, final RelationInfo ri, final QueryProcessor queryProvider, final TripleIntProcedure proc) {
@@ -477,11 +475,11 @@ final public class AssertedStatements extends CollectionBinaryQuery<TripleIntPro
     }
 
     @Override
-    public void performFromCache(ReadGraphImpl graph, QueryProcessor provider, final TripleIntProcedure procedure) {
+    public Object performFromCache(ReadGraphImpl graph, QueryProcessor provider, final TripleIntProcedure procedure) {
         
        assert(isReady());
         
-       if(handleException(graph, procedure)) return;
+       if(handleException(graph, procedure)) return getResult();
        
         final IntArray value = (IntArray)getResult();
         for(int i=0;i<value.size();i+=3) {
@@ -490,6 +488,8 @@ final public class AssertedStatements extends CollectionBinaryQuery<TripleIntPro
 
         procedure.finished(graph);
         
+        return value;
+        
     }
     
     @Override