-/*******************************************************************************\r
- * Copyright (c) 2007, 2010 Association for Decentralized Information Management\r
- * in Industry THTH ry.\r
- * All rights reserved. This program and the accompanying materials\r
- * are made available under the terms of the Eclipse Public License v1.0\r
- * which accompanies this distribution, and is available at\r
- * http://www.eclipse.org/legal/epl-v10.html\r
- *\r
- * Contributors:\r
- * VTT Technical Research Centre of Finland - initial API and implementation\r
- *******************************************************************************/\r
-package org.simantics.interop.stubs;\r
-\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.request.Read;\r
-import org.simantics.db.Session;\r
-import org.simantics.db.exception.DatabaseException;\r
-\r
-public class InteropResource {\r
- \r
- public final Resource ImportLibrary;\r
- public final Resource InteropFeature;\r
- \r
- public static class URIs {\r
- public static final String ImportLibrary = "http://www.simantics.org/Interop-1.0/ImportLibrary";\r
- public static final String InteropFeature = "http://www.simantics.org/Interop-1.0/InteropFeature";\r
- }\r
- \r
- public static Resource getResourceOrNull(ReadGraph graph, String uri) {\r
- try {\r
- return graph.getResource(uri);\r
- } catch(DatabaseException e) {\r
- System.err.println(e.getMessage());\r
- return null;\r
- }\r
- }\r
- \r
- public InteropResource(ReadGraph graph) {\r
- ImportLibrary = getResourceOrNull(graph, URIs.ImportLibrary);\r
- InteropFeature = getResourceOrNull(graph, URIs.InteropFeature);\r
- }\r
- \r
- public static InteropResource getInstance(ReadGraph graph) {\r
- Session session = graph.getSession();\r
- InteropResource ret = session.peekService(InteropResource.class);\r
- if(ret == null) {\r
- ret = new InteropResource(graph);\r
- session.registerService(InteropResource.class, ret);\r
- }\r
- return ret;\r
- }\r
- \r
- public static InteropResource getInstance(Session session) throws DatabaseException {\r
- InteropResource ret = session.peekService(InteropResource.class);\r
- if(ret == null) {\r
- ret = session.syncRequest(new Read<InteropResource>() {\r
- public InteropResource perform(ReadGraph graph) throws DatabaseException {\r
- return new InteropResource(graph);\r
- }\r
- });\r
- session.registerService(InteropResource.class, ret);\r
- }\r
- return ret;\r
- }\r
- \r
-}\r
-\r
+package org.simantics.interop.stubs;
+
+import org.simantics.db.RequestProcessor;
+import org.simantics.db.Resource;
+import org.simantics.db.ReadGraph;
+import org.simantics.db.request.Read;
+import org.simantics.db.Session;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.service.QueryControl;
+
+public class InteropResource {
+
+ public final Resource HasDestination;
+ public final Resource HasGeneratorID;
+ public final Resource HasGeneratorID_Inverse;
+ public final Resource HasImportData;
+ public final Resource HasInputResource;
+ public final Resource HasSource;
+ public final Resource ImportDataOf;
+ public final Resource ImportLibrary;
+
+ public static class URIs {
+ public static final String HasDestination = "http://www.simantics.org/Interop-1.0/HasDestination";
+ public static final String HasGeneratorID = "http://www.simantics.org/Interop-1.0/HasGeneratorID";
+ public static final String HasGeneratorID_Inverse = "http://www.simantics.org/Interop-1.0/HasGeneratorID/Inverse";
+ public static final String HasImportData = "http://www.simantics.org/Interop-1.0/HasImportData";
+ public static final String HasInputResource = "http://www.simantics.org/Interop-1.0/HasInputResource";
+ public static final String HasSource = "http://www.simantics.org/Interop-1.0/HasSource";
+ public static final String ImportDataOf = "http://www.simantics.org/Interop-1.0/ImportDataOf";
+ public static final String ImportLibrary = "http://www.simantics.org/Interop-1.0/ImportLibrary";
+ }
+
+ public static Resource getResourceOrNull(ReadGraph graph, String uri) {
+ try {
+ return graph.getResource(uri);
+ } catch(DatabaseException e) {
+ System.err.println(e.getMessage());
+ return null;
+ }
+ }
+
+ public InteropResource(ReadGraph graph) {
+ HasDestination = getResourceOrNull(graph, URIs.HasDestination);
+ HasGeneratorID = getResourceOrNull(graph, URIs.HasGeneratorID);
+ HasGeneratorID_Inverse = getResourceOrNull(graph, URIs.HasGeneratorID_Inverse);
+ HasImportData = getResourceOrNull(graph, URIs.HasImportData);
+ HasInputResource = getResourceOrNull(graph, URIs.HasInputResource);
+ HasSource = getResourceOrNull(graph, URIs.HasSource);
+ ImportDataOf = getResourceOrNull(graph, URIs.ImportDataOf);
+ ImportLibrary = getResourceOrNull(graph, URIs.ImportLibrary);
+ }
+
+ public static InteropResource getInstance(ReadGraph graph) {
+ Session session = graph.getSession();
+ InteropResource ret = session.peekService(InteropResource.class);
+ if(ret == null) {
+ QueryControl qc = graph.getService(QueryControl.class);
+ ret = new InteropResource(qc.getIndependentGraph(graph));
+ session.registerService(InteropResource.class, ret);
+ }
+ return ret;
+ }
+
+ public static InteropResource getInstance(RequestProcessor session) throws DatabaseException {
+ InteropResource ret = session.peekService(InteropResource.class);
+ if(ret == null) {
+ ret = session.syncRequest(new Read<InteropResource>() {
+ public InteropResource perform(ReadGraph graph) throws DatabaseException {
+ QueryControl qc = graph.getService(QueryControl.class);
+ return new InteropResource(qc.getIndependentGraph(graph));
+ }
+ });
+ session.registerService(InteropResource.class, ret);
+ }
+ return ret;
+ }
+
+}
+