1 package org.simantics.db.common.request;
3 import java.util.Collection;
4 import java.util.HashSet;
6 import org.simantics.db.ReadGraph;
7 import org.simantics.db.Resource;
8 import org.simantics.db.exception.DatabaseException;
10 public class DeepObjectsWithType extends ResourceRead3<Collection<Resource>> {
12 public DeepObjectsWithType(Resource subject, Resource subrelationOf, Resource instanceOf) {
13 super(subject, subrelationOf, instanceOf);
17 public Collection<Resource> perform(ReadGraph graph) throws DatabaseException {
18 HashSet<Resource> result = new HashSet<Resource>();
19 for(Resource object : graph.sync(new ObjectsWithType(resource, resource2, resource3))) {
21 result.addAll(graph.sync(new DeepObjectsWithType(object, resource2, resource3)));