]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.db.layer0/src/org/simantics/db/layer0/scl/AbstractExpressionCompilationRequest.java
Added resourceId and GUID to diagram DnD content
[simantics/platform.git] / bundles / org.simantics.db.layer0 / src / org / simantics / db / layer0 / scl / AbstractExpressionCompilationRequest.java
index f7b78278c513ba3c7a0b20b018ec46e2ea161738..d40f82d4dc1219055b83fe4c722edff93703d63e 100644 (file)
@@ -1,14 +1,14 @@
 package org.simantics.db.layer0.scl;
 
-import gnu.trove.map.hash.THashMap;
-
 import java.util.ArrayList;
 import java.util.List;
 
+import org.simantics.databoard.Bindings;
 import org.simantics.db.ReadGraph;
 import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.exception.RuntimeDatabaseException;
 import org.simantics.db.request.Read;
+import org.simantics.layer0.Layer0;
 import org.simantics.scl.compiler.common.names.Name;
 import org.simantics.scl.compiler.constants.StringConstant;
 import org.simantics.scl.compiler.elaboration.expressions.EApply;
@@ -35,6 +35,8 @@ import org.simantics.scl.runtime.SCLContext;
 import org.simantics.scl.runtime.function.Function1;
 import org.simantics.utils.datastructures.Pair;
 
+import gnu.trove.map.hash.THashMap;
+
 /**
  * <p>This is a base implementation for compiling expressions stored into 
  * graph. It provides a skeleton and a set of methods that must be
@@ -223,4 +225,10 @@ implements Read<Function1<EvaluationContext,Object>> {
         else
             return base;
     }
+    
+    protected static String resolveExpectedValueType(ReadGraph graph, org.simantics.db.layer0.variable.Variable context) throws DatabaseException {
+        Layer0 L0 = Layer0.getInstance(graph);
+        String valueType = graph.getPossibleRelatedValue(context.getPredicateResource(graph), L0.RequiresValueType, Bindings.STRING);
+        return valueType;
+    }
 }