--- /dev/null
+package org.simantics.document.swt.core.scl;\r
+\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.Variable;\r
+import org.simantics.db.layer0.variable.VariableBean;\r
+import org.simantics.document.server.request.ServerSCLValueRequest;\r
+import org.simantics.scl.reflection.annotations.SCLValue;\r
+\r
+public class Functions {\r
+\r
+ @SCLValue(type = "ReadGraph -> Resource -> Variable -> VariableBean")\r
+ public static VariableBean explorerInput(ReadGraph graph, Resource converter, Variable context) throws DatabaseException {\r
+ Variable component = context.getParent(graph);\r
+ Variable input = component.getPossiblePropertyValue(graph, "input"); \r
+ return new VariableBean(graph, input);\r
+ }\r
+\r
+ @SCLValue(type = "ReadGraph -> Resource -> Variable -> Variable")\r
+ public static Variable input(ReadGraph graph, Resource converter, Variable context) throws DatabaseException {\r
+ Variable component = context.getParent(graph);\r
+ Variable input = component.getPossiblePropertyValue(graph, "input"); \r
+ return input;\r
+ }\r
+\r
+ @SCLValue(type = "ReadGraph -> Resource -> Variable -> a")\r
+ public static Object sclValue(ReadGraph graph, Resource converter, Variable context) throws DatabaseException {\r
+ return ServerSCLValueRequest.compileAndEvaluate(graph, context);\r
+ }\r
+\r
+}\r