1 package org.simantics.backup.ontology;
3 import org.simantics.db.RequestProcessor;
4 import org.simantics.db.Resource;
5 import org.simantics.db.ReadGraph;
6 import org.simantics.db.request.Read;
7 import org.simantics.db.Session;
8 import org.simantics.db.exception.DatabaseException;
9 import org.simantics.db.service.QueryControl;
11 public class BackupResource {
13 public final Resource ModelledBackupProvider;
14 public final Resource ModelledBackupProvider_instance;
15 public final Resource ModelledBackupProvider_instance_Inverse;
16 public final Resource SCLMain;
17 public final Resource modelledBackupProvider;
19 public static class URIs {
20 public static final String ModelledBackupProvider = "http://www.simantics.org/Backup-1.0/ModelledBackupProvider";
21 public static final String ModelledBackupProvider_instance = "http://www.simantics.org/Backup-1.0/ModelledBackupProvider/instance";
22 public static final String ModelledBackupProvider_instance_Inverse = "http://www.simantics.org/Backup-1.0/ModelledBackupProvider/instance/Inverse";
23 public static final String SCLMain = "http://www.simantics.org/Backup-1.0/SCLMain";
24 public static final String modelledBackupProvider = "http://www.simantics.org/Backup-1.0/modelledBackupProvider";
27 public static Resource getResourceOrNull(ReadGraph graph, String uri) {
29 return graph.getResource(uri);
30 } catch(DatabaseException e) {
31 System.err.println(e.getMessage());
36 public BackupResource(ReadGraph graph) {
37 ModelledBackupProvider = getResourceOrNull(graph, URIs.ModelledBackupProvider);
38 ModelledBackupProvider_instance = getResourceOrNull(graph, URIs.ModelledBackupProvider_instance);
39 ModelledBackupProvider_instance_Inverse = getResourceOrNull(graph, URIs.ModelledBackupProvider_instance_Inverse);
40 SCLMain = getResourceOrNull(graph, URIs.SCLMain);
41 modelledBackupProvider = getResourceOrNull(graph, URIs.modelledBackupProvider);
44 public static BackupResource getInstance(ReadGraph graph) {
45 Session session = graph.getSession();
46 BackupResource ret = session.peekService(BackupResource.class);
48 QueryControl qc = graph.getService(QueryControl.class);
49 ret = new BackupResource(qc.getIndependentGraph(graph));
50 session.registerService(BackupResource.class, ret);
55 public static BackupResource getInstance(RequestProcessor session) throws DatabaseException {
56 BackupResource ret = session.peekService(BackupResource.class);
58 ret = session.syncRequest(new Read<BackupResource>() {
59 public BackupResource perform(ReadGraph graph) throws DatabaseException {
60 QueryControl qc = graph.getService(QueryControl.class);
61 return new BackupResource(qc.getIndependentGraph(graph));
64 session.registerService(BackupResource.class, ret);