X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.document.server%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fserver%2Fstate%2FStateVariableBuilder.java;fp=bundles%2Forg.simantics.document.server%2Fsrc%2Forg%2Fsimantics%2Fdocument%2Fserver%2Fstate%2FStateVariableBuilder.java;h=404a66e26254f5aa1d6a349fb95d6f8c909ceaa3;hp=0000000000000000000000000000000000000000;hb=8c8283a01e63980527d605936286747006bea601;hpb=0b65b9e03c2fe0eae91af7a8b87b63df749dc5f9 diff --git a/bundles/org.simantics.document.server/src/org/simantics/document/server/state/StateVariableBuilder.java b/bundles/org.simantics.document.server/src/org/simantics/document/server/state/StateVariableBuilder.java new file mode 100644 index 000000000..404a66e26 --- /dev/null +++ b/bundles/org.simantics.document.server/src/org/simantics/document/server/state/StateVariableBuilder.java @@ -0,0 +1,23 @@ +package org.simantics.document.server.state; + +import org.simantics.db.ReadGraph; +import org.simantics.db.exception.DatabaseException; +import org.simantics.db.layer0.variable.NodeManagerVariableBuilder; +import org.simantics.db.layer0.variable.NodeSupport; +import org.simantics.document.server.state.StateNodeManager; +import org.simantics.document.server.state.StateSessionManager; + +public class StateVariableBuilder extends NodeManagerVariableBuilder { + + @Override + protected NodeSupport getNodeSupport(ReadGraph graph, String sessionName) throws DatabaseException { + return StateSessionManager.getInstance().getOrCreateNodeSupport(graph, sessionName); + } + + @Override + protected Object getRoot(ReadGraph graph, NodeSupport support, String sessionName) { + StateNodeManager manager = (StateNodeManager)support.manager; + return manager.getRoot(); + } + +} \ No newline at end of file