import org.simantics.db.layer0.adapter.GenericRelationIndex;
import org.simantics.db.layer0.adapter.Instances;
import org.simantics.db.layer0.adapter.impl.DefaultPasteImportAdvisor;
+import org.simantics.db.layer0.adapter.impl.EntityInstances.QueryIndex;
import org.simantics.db.layer0.adapter.impl.ImportAdvisorFactory;
import org.simantics.db.layer0.genericrelation.IndexedRelations;
import org.simantics.db.layer0.migration.MigrationUtils;
}
public static List<Resource> searchByTypeShallow(ReadGraph graph, Resource model, Resource type) throws DatabaseException {
- return filterByIndexRoot(graph, model, searchByType(graph, model, type));
+ return graph.syncRequest(new QueryIndex(model, type, ""), TransientCacheListener.<List<Resource>>instance());
}
public static List<Resource> searchByType(ReadGraph graph, Resource model, Resource type) throws DatabaseException {
}
public static List<Resource> searchByQueryShallow(ReadGraph graph, Resource model, String query) throws DatabaseException {
- return filterByIndexRoot(graph, model, searchByQuery(graph, model, query));
+ return graph.syncRequest(new QueryIndex(model, Layer0.getInstance(graph).Entity, query), TransientCacheListener.<List<Resource>>instance());
}
public static List<Resource> searchByQuery(ReadGraph graph, Resource model, String query) throws DatabaseException {
}
public static List<Resource> searchByTypeAndNameShallow(ReadGraph graph, Resource model, Resource type, String name) throws DatabaseException {
- return filterByIndexRoot(graph, model, searchByTypeAndName(graph, model, type, name));
+ return graph.syncRequest(new QueryIndex(model, type, name), TransientCacheListener.<List<Resource>>instance());
}
/**
Layer0Utils.addCommentMetadata(graph, "Created SCL Module " + name + " " + sclModule.toString());
}
+ public static void createSCLScriptDefault(WriteGraph graph, Resource target) throws DatabaseException {
+ String name = NameUtils.findFreshEscapedName(graph, "SCLScript", target);
+ createSCLScript(graph, target, name);
+ }
+
+ public static void createSCLScript(WriteGraph graph, Resource target, String name) throws DatabaseException {
+ graph.markUndoPoint();
+ Layer0 L0 = Layer0.getInstance(graph);
+ Resource sclModule = GraphUtils.create2(graph, L0.SCLScript,
+ L0.HasName, name,
+ L0.PartOf, target,
+ L0.SCLScript_definition, "");
+ Layer0Utils.addCommentMetadata(graph, "Created SCL Script " + name + " " + sclModule.toString());
+ }
+
public static void createPGraphDefault(WriteGraph graph, Resource target) throws DatabaseException {
String name = NameUtils.findFreshEscapedName(graph, "Ontology Definition File", target);
createPGraph(graph, target, name);
}
public static void exportModel(ReadGraph graph, Resource model, String fileName, String format, int version) throws DatabaseException {
+ TransferableGraphConfiguration2 conf = new TransferableGraphConfiguration2(graph, model, true, false);
+ exportModel(graph, conf, fileName, format, version);
+ }
+ public static void exportModel(ReadGraph graph, TransferableGraphConfiguration2 conf, String fileName, String format, int version) throws DatabaseException {
+
try {
- TransferableGraphConfiguration2 conf = new TransferableGraphConfiguration2(graph, model, true, false);
TransferableGraphSource s = graph.syncRequest(new ModelTransferableGraphSourceRequest(conf));
TransferableGraphs.writeTransferableGraph(graph, format, version, s, new File(fileName));
+ } catch (DatabaseException e) {
+ throw e;
} catch (Exception e) {
throw new DatabaseException(e);
}