import java.io.InputStream;
+import org.simantics.db.ObjectResourceIdMap;
import org.simantics.db.Resource;
import org.simantics.db.Session;
import org.simantics.db.VirtualGraph;
+import org.simantics.db.exception.DatabaseException;
import org.simantics.db.exception.ResourceNotFoundException;
+import org.simantics.db.impl.ClusterSupport;
import org.simantics.db.impl.graph.ReadGraphImpl;
public interface QuerySupport extends ResourceTranslator {
Session getSession();
-
+
+ ClusterSupport getClusterSupport();
+
+ ObjectResourceIdMap<String> createChildMap();
+
boolean isImmutable(int id);
long getClusterId(int id);
int getId(Resource resource);
int getSingleInstance(int subject);
int getSingleSuperrelation(int subject);
int getFunctionalObject(int subject, int predicate);
- boolean getObjects(ReadGraphImpl graph, int subject, int predicate, IntProcedure procedure);
+ boolean getObjects(ReadGraphImpl graph, int subject, int predicate, IntProcedure procedure) throws DatabaseException;
org.simantics.db.DirectStatements getStatements(ReadGraphImpl graph, final int subject, QueryProcessor processor, boolean ignoreVirtual);
- void getPredicates(ReadGraphImpl graph, int subject, IntProcedure procedure);
+ void getPredicates(ReadGraphImpl graph, int subject, IntProcedure procedure) throws DatabaseException;
byte[] getValue(ReadGraphImpl graph, int resource);
InputStream getValueStream(ReadGraphImpl graph, int resource);