X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fquery%2FAsyncReadEntry.java;fp=bundles%2Forg.simantics.db.impl%2Fsrc%2Forg%2Fsimantics%2Fdb%2Fimpl%2Fquery%2FAsyncReadEntry.java;h=5017151b10b9f8478bf1df7319326d020b0fb583;hp=0dd5730a5f3a1f5c6c232063741bf4343303feb4;hb=472f4b2af82d02fb46f9a929fb6c8090bb4c5301;hpb=a88c02c2d0f4250caf887a130b9f4314c6564722 diff --git a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/AsyncReadEntry.java b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/AsyncReadEntry.java index 0dd5730a5..5017151b1 100644 --- a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/AsyncReadEntry.java +++ b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/AsyncReadEntry.java @@ -92,11 +92,8 @@ final public class AsyncReadEntry extends CacheEntryBase> i } }, id, true); - - id.perform(proc.queryGraph, proc); - proc.dec(); - proc.get(); + proc.performSync(id); } catch (Throwable t) { except(t); @@ -158,17 +155,10 @@ final public class AsyncReadEntry extends CacheEntryBase> i AsyncProcedure procedure_, boolean needsToBlock) throws DatabaseException { BlockingAsyncProcedure proc = new BlockingAsyncProcedure(callerGraph, entry, procedure_, request, needsToBlock); - - try { - request.perform(proc.queryGraph, proc); - } finally { - proc.queryGraph.asyncBarrier.dec(); - } - if(needsToBlock) { - proc.waitBarrier(); - return proc.get(); + return proc.performSync(request); } else { + proc.performAsync(request); return null; }