-package org.simantics.db.impl;\r
-\r
-import org.simantics.db.AsyncReadGraph;\r
-import org.simantics.db.RelationInfo;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.impl.query.QueryProcessor;\r
-import org.simantics.db.procedure.AsyncContextMultiProcedure;\r
-\r
-public final class ForEachObjectContextProcedure<C> implements AsyncContextMultiProcedure<C, Resource> {\r
-\r
- public final int predicateKey;\r
- public final int[] clusterKey;\r
- public final int[] predicateReference;\r
- public final RelationInfo info;\r
- public final QueryProcessor processor;\r
- public final ClusterI.CompleteTypeEnum completeType;\r
- private final AsyncContextMultiProcedure<C, Resource> user;\r
- \r
- public ForEachObjectContextProcedure(int predicateKey, RelationInfo info, QueryProcessor processor, AsyncContextMultiProcedure<C, Resource> user) {\r
- this.predicateKey = predicateKey;\r
- this.completeType = ClusterTraitsBase.getCompleteTypeFromResourceKey(predicateKey); \r
- this.info = info;\r
- this.user = user;\r
- this.processor = processor;\r
- this.clusterKey = new int[32*8];\r
- this.predicateReference = new int[32*8];\r
- }\r
- \r
- @Override\r
- public void execute(AsyncReadGraph graph, C context, Resource result) {\r
- user.execute(graph, context, result);\r
- }\r
-\r
- @Override\r
- public void finished(AsyncReadGraph graph) {\r
- user.finished(graph);\r
- }\r
-\r
- @Override\r
- public void exception(AsyncReadGraph graph, Throwable throwable) {\r
- user.exception(graph, throwable);\r
- }\r
- \r
-}\r
+package org.simantics.db.impl;
+
+import org.simantics.db.ReadGraph;
+import org.simantics.db.RelationInfo;
+import org.simantics.db.Resource;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.impl.query.QueryProcessor;
+import org.simantics.db.procedure.SyncContextMultiProcedure;
+
+public final class ForEachObjectContextProcedure<C> implements SyncContextMultiProcedure<C, Resource> {
+
+ public final int predicateKey;
+ public final int[] clusterKey;
+ public final int[] predicateReference;
+ public final RelationInfo info;
+ public final QueryProcessor processor;
+ public final ClusterI.CompleteTypeEnum completeType;
+ private final SyncContextMultiProcedure<C, Resource> user;
+
+ public ForEachObjectContextProcedure(int predicateKey, RelationInfo info, QueryProcessor processor, SyncContextMultiProcedure<C, Resource> user) {
+ this.predicateKey = predicateKey;
+ this.completeType = ClusterTraitsBase.getCompleteTypeFromResourceKey(predicateKey);
+ this.info = info;
+ this.user = user;
+ this.processor = processor;
+ this.clusterKey = new int[32*8];
+ this.predicateReference = new int[32*8];
+ }
+
+ @Override
+ public void execute(ReadGraph graph, C context, Resource result) throws DatabaseException {
+ user.execute(graph, context, result);
+ }
+
+ @Override
+ public void finished(ReadGraph graph, C context) throws DatabaseException {
+ user.finished(graph, context);
+ }
+
+ @Override
+ public void exception(ReadGraph graph, Throwable throwable) throws DatabaseException {
+ user.exception(graph, throwable);
+ }
+
+}