1 package org.simantics.db.impl.graph;
3 import org.simantics.db.Resource;
4 import org.simantics.db.common.utils.Logger;
5 import org.simantics.db.impl.query.IntProcedure;
6 import org.simantics.db.impl.query.QuerySupport;
7 import org.simantics.db.procedure.AsyncMultiProcedure;
9 public class MultiIntProcedure implements IntProcedure {
11 final private AsyncMultiProcedure<Resource> procedure;
12 final private ReadGraphImpl impl;
13 final private QuerySupport support;
15 public MultiIntProcedure(AsyncMultiProcedure<Resource> procedure, ReadGraphImpl impl, QuerySupport support) {
16 this.procedure = procedure;
18 this.support = support;
22 public void execute(ReadGraphImpl graph, int i) {
24 procedure.execute(graph, support.getResource(i));
25 } catch (Throwable t2) {
26 Logger.defaultLogError(t2);
31 public void finished(ReadGraphImpl graph) {
33 procedure.finished(graph);
34 // impl.state.barrier.dec(this);
35 } catch (Throwable t2) {
36 Logger.defaultLogError(t2);
41 public void exception(ReadGraphImpl graph, Throwable t) {
43 procedure.exception(graph, t);
44 } catch (Throwable t2) {
45 Logger.defaultLogError(t2);
47 // impl.state.barrier.dec("ReadGraphSupportImpl.516");
51 public String toString() {
52 return "forEachObject with " + procedure;