From f5aaab3861408de6329d0bbbc46a1f82a93079dc Mon Sep 17 00:00:00 2001 From: Efim Poberezkin Date: Sun, 10 Jan 2021 23:41:53 +0400 Subject: [PATCH] agent store: fix updateQueueStatus --- src/Simplex/Messaging/Agent/Store/SQLite.hs | 24 ++++++++++++--------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/Simplex/Messaging/Agent/Store/SQLite.hs b/src/Simplex/Messaging/Agent/Store/SQLite.hs index 998a870d5..142b4c6c6 100644 --- a/src/Simplex/Messaging/Agent/Store/SQLite.hs +++ b/src/Simplex/Messaging/Agent/Store/SQLite.hs @@ -405,16 +405,20 @@ instance (MonadUnliftIO m, MonadError StoreError m) => MonadAgentStore SQLiteSto removeSndAuth :: SQLiteStore -> ConnAlias -> m () removeSndAuth _st _connAlias = throwError SEInternal - -- TODO finalize - -- updateQueueStatus :: SQLiteStore -> ConnAlias -> QueueDirection -> QueueStatus -> m () - -- updateQueueStatus st connAlias qDirection status = do - -- (rcvQId, sndQId) <- getConnection st connAlias - -- case qDirection of - -- RCV -> do - -- updateRcvQueueStatus st rcvQId status - -- SND -> do - -- updateSndQueueStatus st sndQId status - -- when (isNothing rcvQId && isNothing sndQId) $ throwError SEBadConn + -- TODO test + updateQueueStatus :: SQLiteStore -> ConnAlias -> QueueDirection -> QueueStatus -> m () + updateQueueStatus st connAlias qDirection status = do + case qDirection of + RCV -> do + (rcvQId, _) <- getConnection st connAlias + case rcvQId of + Just qId -> updateRcvQueueStatus st qId status + Nothing -> throwError SEBadConn + SND -> do + (_, sndQId) <- getConnection st connAlias + case sndQId of + Just qId -> updateSndQueueStatus st qId status + Nothing -> throwError SEBadConn createMsg :: SQLiteStore -> ConnAlias -> QueueDirection -> AMessage -> m MessageDelivery createMsg _st _connAlias _dir _msg = throwError SEInternal