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%2FSyncIntProcedure.java;h=c03f63b5ea56497ec236611aa58463bb3c44b2a8;hp=f79910358e1706770f8fb033dcbb39e68de9aeb1;hb=0d9b90834ce56b292c00b1a39850ed842c3e4d42;hpb=e5db6157fd8722c946613d4e46d7aaf6bfa92609 diff --git a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/SyncIntProcedure.java b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/SyncIntProcedure.java index f79910358..c03f63b5e 100644 --- a/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/SyncIntProcedure.java +++ b/bundles/org.simantics.db.impl/src/org/simantics/db/impl/query/SyncIntProcedure.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2007, 2010 Association for Decentralized Information Management + * Copyright (c) 2007, 2018 Association for Decentralized Information Management * in Industry THTH ry. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 @@ -11,34 +11,34 @@ *******************************************************************************/ package org.simantics.db.impl.query; +import org.simantics.db.exception.DatabaseException; import org.simantics.db.impl.graph.ReadGraphImpl; - -abstract public class SyncIntProcedure implements IntProcedure, ThreadRunnable { +public abstract class SyncIntProcedure implements IntProcedure, ThreadRunnable { int barrier = 1; -// + // final private AtomicInteger barrier = new AtomicInteger(1); - + public SyncIntProcedure() { } - - final protected void inc() { -// System.err.println("inc " + barrier.get()); + + protected final void inc() { +// System.err.println("inc " + barrier.get()); ++barrier; -// barrier.incrementAndGet(); +// barrier.incrementAndGet(); } - - final protected void dec(ReadGraphImpl graph) { -// System.err.println("dec " + barrier.get()); - if((--barrier) == 0) { + + protected final void dec(ReadGraphImpl graph) throws DatabaseException { +// System.err.println("dec " + barrier.get()); + if((--barrier) == 0) { run(graph); - } + } } - + @Override - public void exception(ReadGraphImpl graph, Throwable t) { - throw new Error("Errors are not supported,", t); + public void exception(ReadGraphImpl graph, Throwable t) throws DatabaseException { + throw new Error("Errors are not supported,", t); } - + }