]> gerrit.simantics Code Review - simantics/interop.git/blobdiff - org.simantics.interop/src/org/simantics/interop/stubs/InteropResource.java
Ability to store selected data for model updates.
[simantics/interop.git] / org.simantics.interop / src / org / simantics / interop / stubs / InteropResource.java
index c88629f26ff8830ed9eb703e02470748785fddc6..4ad00569d5a74cf72a7b69232369133fef07c7ea 100644 (file)
@@ -1,14 +1,3 @@
-/*******************************************************************************\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
@@ -16,15 +5,36 @@ import org.simantics.db.ReadGraph;
 import org.simantics.db.request.Read;\r
 import org.simantics.db.Session;\r
 import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.db.service.QueryControl;\r
 \r
 public class InteropResource {\r
     \r
+    public final Resource HasDestination;\r
+    public final Resource HasGeneratorID;\r
+    public final Resource HasGeneratorID_Inverse;\r
+    public final Resource HasImportData;\r
+    public final Resource HasInputResource;\r
+    public final Resource HasSource;\r
+    public final Resource INodeType;\r
+    public final Resource ImportDataOf;\r
     public final Resource ImportLibrary;\r
-    public final Resource InteropFeature;\r
+    public final Resource InteropBrowseContext;\r
+    public final Resource InteropBrowseContext_InteropChildRule;\r
+    public final Resource InteropBrowseContext_InteropNode;\r
         \r
     public static class URIs {\r
+        public static final String HasDestination = "http://www.simantics.org/Interop-1.0/HasDestination";\r
+        public static final String HasGeneratorID = "http://www.simantics.org/Interop-1.0/HasGeneratorID";\r
+        public static final String HasGeneratorID_Inverse = "http://www.simantics.org/Interop-1.0/HasGeneratorID/Inverse";\r
+        public static final String HasImportData = "http://www.simantics.org/Interop-1.0/HasImportData";\r
+        public static final String HasInputResource = "http://www.simantics.org/Interop-1.0/HasInputResource";\r
+        public static final String HasSource = "http://www.simantics.org/Interop-1.0/HasSource";\r
+        public static final String INodeType = "http://www.simantics.org/Interop-1.0/INodeType";\r
+        public static final String ImportDataOf = "http://www.simantics.org/Interop-1.0/ImportDataOf";\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
+        public static final String InteropBrowseContext = "http://www.simantics.org/Interop-1.0/InteropBrowseContext";\r
+        public static final String InteropBrowseContext_InteropChildRule = "http://www.simantics.org/Interop-1.0/InteropBrowseContext/InteropChildRule";\r
+        public static final String InteropBrowseContext_InteropNode = "http://www.simantics.org/Interop-1.0/InteropBrowseContext/InteropNode";\r
     }\r
     \r
     public static Resource getResourceOrNull(ReadGraph graph, String uri) {\r
@@ -37,15 +47,26 @@ public class InteropResource {
     }\r
     \r
     public InteropResource(ReadGraph graph) {\r
+        HasDestination = getResourceOrNull(graph, URIs.HasDestination);\r
+        HasGeneratorID = getResourceOrNull(graph, URIs.HasGeneratorID);\r
+        HasGeneratorID_Inverse = getResourceOrNull(graph, URIs.HasGeneratorID_Inverse);\r
+        HasImportData = getResourceOrNull(graph, URIs.HasImportData);\r
+        HasInputResource = getResourceOrNull(graph, URIs.HasInputResource);\r
+        HasSource = getResourceOrNull(graph, URIs.HasSource);\r
+        INodeType = getResourceOrNull(graph, URIs.INodeType);\r
+        ImportDataOf = getResourceOrNull(graph, URIs.ImportDataOf);\r
         ImportLibrary = getResourceOrNull(graph, URIs.ImportLibrary);\r
-        InteropFeature = getResourceOrNull(graph, URIs.InteropFeature);\r
+        InteropBrowseContext = getResourceOrNull(graph, URIs.InteropBrowseContext);\r
+        InteropBrowseContext_InteropChildRule = getResourceOrNull(graph, URIs.InteropBrowseContext_InteropChildRule);\r
+        InteropBrowseContext_InteropNode = getResourceOrNull(graph, URIs.InteropBrowseContext_InteropNode);\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
+            QueryControl qc = graph.getService(QueryControl.class);\r
+            ret = new InteropResource(qc.getIndependentGraph(graph));\r
             session.registerService(InteropResource.class, ret);\r
         }\r
         return ret;\r
@@ -56,7 +77,8 @@ public class InteropResource {
         if(ret == null) {\r
             ret = session.syncRequest(new Read<InteropResource>() {\r
                 public InteropResource perform(ReadGraph graph) throws DatabaseException {\r
-                    return new InteropResource(graph);\r
+                    QueryControl qc = graph.getService(QueryControl.class);\r
+                    return new InteropResource(qc.getIndependentGraph(graph));\r
                 }\r
             });\r
             session.registerService(InteropResource.class, ret);\r