+package org.simantics.structural2.variables;\r
+\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.variable.StandardExpressionGraphPropertyVariable;\r
+import org.simantics.db.layer0.variable.Variable;\r
+import org.simantics.structural2.scl.CompileProceduralExpressionValueRequest;\r
+\r
+public class StructuralProceduralExpressionPropertyVariable extends StandardExpressionGraphPropertyVariable {\r
+\r
+ public StructuralProceduralExpressionPropertyVariable(ReadGraph graph,\r
+ Variable parent, Resource property, String expressionText)\r
+ throws DatabaseException {\r
+ super(graph, parent, property, expressionText);\r
+ }\r
+\r
+ @Override\r
+ protected Object compute(ReadGraph graph, Variable context) throws DatabaseException {\r
+ return CompileProceduralExpressionValueRequest.compileAndEvaluate(graph, expressionText, context);\r
+ }\r
+\r
+ @Override\r
+ protected Object compute(ReadGraph graph, Variable context, Binding binding) throws DatabaseException {\r
+ return CompileProceduralExpressionValueRequest.compileAndEvaluate(graph, expressionText, context);\r
+ }\r
+\r
+}\r