1 package org.simantics.action.ontology;
\r
3 import org.simantics.db.RequestProcessor;
\r
4 import org.simantics.db.Resource;
\r
5 import org.simantics.db.ReadGraph;
\r
6 import org.simantics.db.request.Read;
\r
7 import org.simantics.db.Session;
\r
8 import org.simantics.db.exception.DatabaseException;
\r
9 import org.simantics.db.service.QueryControl;
\r
11 public class ActionResource {
\r
13 public final Resource Action;
\r
14 public final Resource DropAction;
\r
16 public static class URIs {
\r
17 public static final String Action = "http://www.simantics.org/Action-1.1/Action";
\r
18 public static final String DropAction = "http://www.simantics.org/Action-1.1/DropAction";
\r
21 public static Resource getResourceOrNull(ReadGraph graph, String uri) {
\r
23 return graph.getResource(uri);
\r
24 } catch(DatabaseException e) {
\r
25 System.err.println(e.getMessage());
\r
30 public ActionResource(ReadGraph graph) {
\r
31 Action = getResourceOrNull(graph, URIs.Action);
\r
32 DropAction = getResourceOrNull(graph, URIs.DropAction);
\r
35 public static ActionResource getInstance(ReadGraph graph) {
\r
36 Session session = graph.getSession();
\r
37 ActionResource ret = session.peekService(ActionResource.class);
\r
39 QueryControl qc = graph.getService(QueryControl.class);
\r
40 ret = new ActionResource(qc.getIndependentGraph(graph));
\r
41 session.registerService(ActionResource.class, ret);
\r
46 public static ActionResource getInstance(RequestProcessor session) throws DatabaseException {
\r
47 ActionResource ret = session.peekService(ActionResource.class);
\r
49 ret = session.syncRequest(new Read<ActionResource>() {
\r
50 public ActionResource perform(ReadGraph graph) throws DatabaseException {
\r
51 QueryControl qc = graph.getService(QueryControl.class);
\r
52 return new ActionResource(qc.getIndependentGraph(graph));
\r
55 session.registerService(ActionResource.class, ret);
\r