on master help sign in
all tests pass
473263bAgentM
ProjectM36/Server.hs+5−3
@@ -2,7 +2,7 @@
2module ProjectM36.Server where
2module ProjectM36.Server where
3
3
4import ProjectM36.Client
4import ProjectM36.Client
5−import ProjectM36.Server.EntryPoints (handleExecuteRelationalExpr, handleExecuteDatabaseContextExpr, handleLogin, handleExecuteHeadName, handleExecuteGraphExpr, handleExecuteTypeForRelationalExpr, handleRetrieveInclusionDependencies,handleRetrievePlanForDatabaseContextExpr, handleRetrieveTransactionGraph, handleRetrieveHeadTransactionUUID)
5+import ProjectM36.Server.EntryPoints
6import ProjectM36.Server.RemoteCallTypes
6import ProjectM36.Server.RemoteCallTypes
7import ProjectM36.Server.Config (ServerConfig(..))
7import ProjectM36.Server.Config (ServerConfig(..))
8
8
@@ -29,8 +29,10 @@ serverDefinition = defaultProcess {
29 handleCall (\conn (RetrievePlanForDatabaseContextExpr sessionId dbExpr) -> handleRetrievePlanForDatabaseContextExpr sessionId conn dbExpr),
29 handleCall (\conn (RetrievePlanForDatabaseContextExpr sessionId dbExpr) -> handleRetrievePlanForDatabaseContextExpr sessionId conn dbExpr),
30 handleCall (\conn (RetrieveHeadTransactionUUID sessionId) -> handleRetrieveHeadTransactionUUID sessionId conn),
30 handleCall (\conn (RetrieveHeadTransactionUUID sessionId) -> handleRetrieveHeadTransactionUUID sessionId conn),
31 handleCall (\conn (RetrieveTransactionGraph sessionId) -> handleRetrieveTransactionGraph sessionId conn),
31 handleCall (\conn (RetrieveTransactionGraph sessionId) -> handleRetrieveTransactionGraph sessionId conn),
32− handleCall (\conn Login -> handleLogin conn)
32+ handleCall (\conn Login -> handleLogin conn),
33+ handleCall (\conn (CreateSessionAtHead headn) -> handleCreateSessionAtHead headn conn),
34+ handleCall (\conn (CreateSessionAtCommit commitId) -> handleCreateSessionAtCommit commitId conn)
33− ],
35+ ],
34 unhandledMessagePolicy = Log
36 unhandledMessagePolicy = Log
35 }
37 }
36
38
ProjectM36/Server/EntryPoints.hs+10
@@ -55,4 +55,14 @@ handleRetrieveTransactionGraph sessionId conn = do
55handleRetrieveHeadTransactionUUID :: SessionId -> Connection -> Process (ProcessReply (Maybe UUID) Connection)
55handleRetrieveHeadTransactionUUID :: SessionId -> Connection -> Process (ProcessReply (Maybe UUID) Connection)
56handleRetrieveHeadTransactionUUID sessionId conn = do
56handleRetrieveHeadTransactionUUID sessionId conn = do
57 ret <- liftIO $ headTransactionUUID sessionId conn
57 ret <- liftIO $ headTransactionUUID sessionId conn
58+ reply ret conn
59+
60+handleCreateSessionAtCommit :: UUID -> Connection -> Process (ProcessReply (Either RelationalError SessionId) Connection)
61+handleCreateSessionAtCommit commitId conn = do
62+ ret <- liftIO $ createSessionAtCommit commitId conn
63+ reply ret conn
64+
65+handleCreateSessionAtHead :: HeadName -> Connection -> Process (ProcessReply (Either RelationalError SessionId) Connection)
66+handleCreateSessionAtHead headn conn = do
67+ ret <- liftIO $ createSessionAtHead headn conn
58 reply ret conn
68 reply ret conn