@@ -283,6 +283,7 @@ import Simplex.Messaging.Notifications.Types
283283import Simplex.Messaging.Parsers (parseAll )
284284import Simplex.Messaging.Protocol
285285import qualified Simplex.Messaging.Protocol as SMP
286+ import Simplex.Messaging.Agent.Store.Entity
286287import Simplex.Messaging.Transport.Client (TransportHost )
287288import Simplex.Messaging.Util (bshow , catchAllErrors , eitherToMaybe , firstRow , firstRow' , ifM , maybeFirstRow , tshow , ($>>=) , (<$$>) )
288289import Simplex.Messaging.Version.Internal
@@ -858,7 +859,7 @@ createRcvMsg db connId rq@RcvQueue {dbQueueId} rcvMsgData@RcvMsgData {msgMeta =
858859 updateRcvMsgHash db connId sndMsgId internalRcvId internalHash
859860 setLastBrokerTs db connId dbQueueId brokerTs
860861
861- setLastBrokerTs :: DB. Connection -> ConnId -> DBQueueId 'QSStored -> UTCTime -> IO ()
862+ setLastBrokerTs :: DB. Connection -> ConnId -> DBEntityId -> UTCTime -> IO ()
862863setLastBrokerTs db connId dbQueueId brokerTs =
863864 DB. execute db " UPDATE rcv_queues SET last_broker_ts = ? WHERE conn_id = ? AND rcv_queue_id = ? AND (last_broker_ts IS NULL OR last_broker_ts < ?)" (brokerTs, connId, dbQueueId, brokerTs)
864865
@@ -1212,7 +1213,7 @@ getSndRatchet db connId v =
12121213 DB. query db " SELECT ratchet_state, x3dh_pub_key_1, x3dh_pub_key_2, pq_pub_kem FROM ratchets WHERE conn_id = ?" (Only connId)
12131214 where
12141215 result = \ case
1215- (Just ratchetState, Just k1, Just k2, pKem_) ->
1216+ (Just ratchetState, Just k1, Just k2, pKem_) ->
12161217 let params = case pKem_ of
12171218 Nothing -> CR. AE2ERatchetParams CR. SRKSProposed (CR. E2ERatchetParams v k1 k2 Nothing )
12181219 Just (CR. ARKP s pKem) -> CR. AE2ERatchetParams s (CR. E2ERatchetParams v k1 k2 (Just pKem))
@@ -1811,15 +1812,6 @@ instance ToField QueueStatus where toField = toField . serializeQueueStatus
18111812
18121813instance FromField QueueStatus where fromField = fromTextField_ queueStatusT
18131814
1814- instance ToField (DBQueueId 'QSStored) where toField (DBQueueId qId) = toField qId
1815-
1816- instance FromField (DBQueueId 'QSStored) where
1817- #if defined(dbPostgres)
1818- fromField x dat = DBQueueId <$> fromField x dat
1819- #else
1820- fromField x = DBQueueId <$> fromField x
1821- #endif
1822-
18231815instance ToField InternalRcvId where toField (InternalRcvId x) = toField x
18241816
18251817deriving newtype instance FromField InternalRcvId
@@ -2018,13 +2010,13 @@ insertSndQueue_ db connId' sq@SndQueue {..} serverKeyHash_ = do
20182010 smp_client_version=EXCLUDED.smp_client_version,
20192011 server_key_hash=EXCLUDED.server_key_hash
20202012 |]
2021- ((host server, port server, sndId, queueMode, connId', sndPublicKey, sndPrivateKey, e2ePubKey, e2eDhSecret)
2013+ ((host server, port server, sndId, queueMode, connId', sndPublicKey, sndPrivateKey, e2ePubKey, e2eDhSecret)
20222014 :. (status, qId, BI primary, dbReplaceQueueId, smpClientVersion, serverKeyHash_))
20232015 pure (sq :: NewSndQueue ) {connId = connId', dbQueueId = qId}
20242016
2025- newQueueId_ :: [Only Int64 ] -> DBQueueId 'QSStored
2026- newQueueId_ [] = DBQueueId 1
2027- newQueueId_ (Only maxId : _) = DBQueueId (maxId + 1 )
2017+ newQueueId_ :: [Only Int64 ] -> DBEntityId
2018+ newQueueId_ [] = DBEntityId 1
2019+ newQueueId_ (Only maxId : _) = DBEntityId (maxId + 1 )
20282020
20292021-- * getConn helpers
20302022
@@ -2160,7 +2152,7 @@ rcvQueueQuery =
21602152
21612153toRcvQueue ::
21622154 (UserId , C. KeyHash , ConnId , NonEmpty TransportHost , ServiceName , SMP. RecipientId , SMP. RcvPrivateAuthKey , SMP. RcvDhSecret , C. PrivateKeyX25519 , Maybe C. DhSecretX25519 , SMP. SenderId , Maybe QueueMode )
2163- :. (QueueStatus , DBQueueId 'QSStored , BoolInt , Maybe Int64 , Maybe RcvSwitchStatus , Maybe VersionSMPC , Int )
2155+ :. (QueueStatus , DBEntityId , BoolInt , Maybe Int64 , Maybe RcvSwitchStatus , Maybe VersionSMPC , Int )
21642156 :. (Maybe SMP. NtfPublicAuthKey , Maybe SMP. NtfPrivateAuthKey , Maybe SMP. NotifierId , Maybe RcvNtfDhSecret )
21652157 :. (Maybe SMP. LinkId , Maybe LinkKey , Maybe C. PrivateKeyEd25519 , Maybe EncDataBytes ) ->
21662158 RcvQueue
@@ -2210,7 +2202,7 @@ sndQueueQuery =
22102202toSndQueue ::
22112203 (UserId , C. KeyHash , ConnId , NonEmpty TransportHost , ServiceName , SenderId , Maybe QueueMode )
22122204 :. (Maybe SndPublicAuthKey , SndPrivateAuthKey , Maybe C. PublicKeyX25519 , C. DhSecretX25519 , QueueStatus )
2213- :. (DBQueueId 'QSStored , BoolInt , Maybe Int64 , Maybe SndSwitchStatus , VersionSMPC ) ->
2205+ :. (DBEntityId , BoolInt , Maybe Int64 , Maybe SndSwitchStatus , VersionSMPC ) ->
22142206 SndQueue
22152207toSndQueue
22162208 ( (userId, keyHash, connId, host, port, sndId, queueMode)
0 commit comments