]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.document.server/src/org/simantics/document/server/VariableStructuralContext.java
DocumentRequest performance enhancements (Simupedia)
[simantics/platform.git] / bundles / org.simantics.document.server / src / org / simantics / document / server / VariableStructuralContext.java
index e3f7e3778a4b1cbbc2cffe9650efbbcbf02c0389..b714253e2e86a8a576575e915eefd537023740a5 100644 (file)
@@ -1,98 +1,95 @@
-package org.simantics.document.server;\r
-\r
-import java.util.List;\r
-import java.util.Map;\r
-\r
-import org.simantics.databoard.adapter.AdaptException;\r
-import org.simantics.databoard.binding.Binding;\r
-import org.simantics.db.ReadGraph;\r
-import org.simantics.db.Resource;\r
-import org.simantics.db.exception.DatabaseException;\r
-import org.simantics.db.layer0.request.VariableRead;\r
-import org.simantics.db.layer0.variable.Variable;\r
-import org.simantics.db.service.CollectionSupport;\r
-import org.simantics.document.base.ontology.DocumentationResource;\r
-import org.simantics.structural2.scl.StructuralComponent;\r
-\r
-public class VariableStructuralContext extends StructuralComponent<Variable> {\r
-\r
-       final private Variable selfVariable;\r
-       final private Variable variable;\r
-       final private DocumentationResource DOC;\r
-       \r
-       public VariableStructuralContext(ReadGraph graph, Variable selfVariable) throws DatabaseException {\r
-               this.selfVariable = selfVariable;\r
-               this.variable = selfVariable.getParent(graph).getParent(graph);\r
-               this.DOC = DocumentationResource.getInstance(graph);\r
-       }\r
-       \r
-       @Override\r
-       public Resource getType(ReadGraph g) throws DatabaseException {\r
-               throw new UnsupportedOperationException();\r
-       }\r
-       \r
-       static class MapRequest extends VariableRead<Map<Resource,Variable>> {\r
-\r
-               public MapRequest(Variable component) {\r
-                       super(component);\r
-               }\r
-\r
-               @Override\r
-               public Map<Resource, Variable> perform(ReadGraph graph) throws DatabaseException {\r
-                       \r
-                       CollectionSupport cs = graph.getService(CollectionSupport.class);\r
-                       Map<Resource, Variable> result = cs.createMap(Variable.class);\r
-                       for(Variable property : variable.getProperties(graph)) {\r
-                               Resource predicate = property.getPossiblePredicateResource(graph);\r
-                               if(predicate != null)\r
-                                       result.put(predicate, property);\r
-                       }\r
-                       return result;\r
-                       \r
-               }\r
-               \r
-       }\r
-\r
-       @Override\r
-       public Object getValue(ReadGraph g, Resource attribute, Binding binding) throws DatabaseException, AdaptException {\r
-               \r
-               Map<Resource,Variable> map = g.syncRequest(new MapRequest(variable));\r
-               Variable p = map.get(attribute);\r
-               if(p != null) {\r
-                       if(binding != null)\r
-                               return p.getValue(g, binding);\r
-                       else\r
-                               return p.getValue(g);\r
-               }\r
-               \r
-               return null;\r
-               \r
-       }\r
-\r
-       @Override\r
-       public boolean isParametrized(ReadGraph g) throws DatabaseException {\r
-               throw new UnsupportedOperationException();\r
-       }\r
-\r
-       @Override\r
-       public Variable getConnection(ReadGraph g, Resource connectionPoint) throws DatabaseException {\r
-               throw new UnsupportedOperationException();\r
-       }\r
-\r
-       @SuppressWarnings({ "unchecked", "rawtypes" })\r
-       @Override\r
-       public List getConnections(ReadGraph g, Resource connectionPoint) throws DatabaseException {\r
-               throw new UnsupportedOperationException();\r
-       }\r
-\r
-       @Override\r
-       public Resource getResource() {\r
-               throw new UnsupportedOperationException();\r
-       }\r
-\r
-    @Override\r
-    public StructuralComponent<Variable> getContext() {\r
-        return null;\r
-    }\r
-\r
-}\r
+package org.simantics.document.server;
+
+import java.util.List;
+import java.util.Map;
+
+import org.simantics.databoard.adapter.AdaptException;
+import org.simantics.databoard.binding.Binding;
+import org.simantics.db.ReadGraph;
+import org.simantics.db.Resource;
+import org.simantics.db.exception.DatabaseException;
+import org.simantics.db.layer0.request.VariableRead;
+import org.simantics.db.layer0.variable.Variable;
+import org.simantics.db.service.CollectionSupport;
+import org.simantics.structural2.scl.StructuralComponent;
+
+public class VariableStructuralContext extends StructuralComponent<Variable> {
+
+       final private Variable selfVariable;
+       final private Variable variable;
+       
+       public VariableStructuralContext(ReadGraph graph, Variable selfVariable) throws DatabaseException {
+               this.selfVariable = selfVariable;
+               this.variable = selfVariable.getParent(graph).getParent(graph);
+       }
+       
+       @Override
+       public Resource getType(ReadGraph g) throws DatabaseException {
+               throw new UnsupportedOperationException();
+       }
+       
+       static class MapRequest extends VariableRead<Map<Resource,Variable>> {
+
+               public MapRequest(Variable component) {
+                       super(component);
+               }
+
+               @Override
+               public Map<Resource, Variable> perform(ReadGraph graph) throws DatabaseException {
+                       
+                       CollectionSupport cs = graph.getService(CollectionSupport.class);
+                       Map<Resource, Variable> result = cs.createMap(Variable.class);
+                       for(Variable property : variable.getProperties(graph)) {
+                               Resource predicate = property.getPossiblePredicateResource(graph);
+                               if(predicate != null)
+                                       result.put(predicate, property);
+                       }
+                       return result;
+                       
+               }
+               
+       }
+
+       @Override
+       public Object getValue(ReadGraph g, Resource attribute, Binding binding) throws DatabaseException, AdaptException {
+               
+               Map<Resource,Variable> map = g.syncRequest(new MapRequest(variable));
+               Variable p = map.get(attribute);
+               if(p != null) {
+                       if(binding != null)
+                               return p.getValue(g, binding);
+                       else
+                               return p.getValue(g);
+               }
+               
+               return null;
+               
+       }
+
+       @Override
+       public boolean isParametrized(ReadGraph g) throws DatabaseException {
+               throw new UnsupportedOperationException();
+       }
+
+       @Override
+       public Variable getConnection(ReadGraph g, Resource connectionPoint) throws DatabaseException {
+               throw new UnsupportedOperationException();
+       }
+
+       @SuppressWarnings({ "unchecked", "rawtypes" })
+       @Override
+       public List getConnections(ReadGraph g, Resource connectionPoint) throws DatabaseException {
+               throw new UnsupportedOperationException();
+       }
+
+       @Override
+       public Resource getResource() {
+               throw new UnsupportedOperationException();
+       }
+
+    @Override
+    public StructuralComponent<Variable> getContext() {
+        return null;
+    }
+
+}