| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Simplex.Messaging.Server.QueueStore.Types
Documentation
class StoreQueueClass q where Source #
Methods
recipientId :: q -> RecipientId Source #
queueRec :: q -> TVar (Maybe QueueRec) Source #
withQueueLock :: q -> Text -> IO a -> IO a Source #
Instances
| StoreQueueClass STMQueue Source # | |
Defined in Simplex.Messaging.Server.MsgStore.STM Methods recipientId :: STMQueue -> RecipientId Source # queueRec :: STMQueue -> TVar (Maybe QueueRec) Source # withQueueLock :: STMQueue -> Text -> IO a -> IO a Source # | |
| StoreQueueClass (JournalQueue s) Source # | |
Defined in Simplex.Messaging.Server.MsgStore.Journal Methods recipientId :: JournalQueue s -> RecipientId Source # queueRec :: JournalQueue s -> TVar (Maybe QueueRec) Source # withQueueLock :: JournalQueue s -> Text -> IO a -> IO a Source # | |
class StoreQueueClass q => QueueStoreClass q s where Source #
Associated Types
type QueueStoreCfg s Source #
Methods
newQueueStore :: QueueStoreCfg s -> IO s Source #
closeQueueStore :: s -> IO () Source #
getEntityCounts :: s -> IO EntityCounts Source #
loadedQueues :: s -> TMap RecipientId q Source #
compactQueues :: s -> IO Int64 Source #
addQueue_ :: s -> (RecipientId -> QueueRec -> IO q) -> RecipientId -> QueueRec -> IO (Either ErrorType q) Source #
getQueue_ :: QueueParty p => s -> (Bool -> RecipientId -> QueueRec -> IO q) -> SParty p -> QueueId -> IO (Either ErrorType q) Source #
getQueues_ :: BatchParty p => s -> (Bool -> RecipientId -> QueueRec -> IO q) -> SParty p -> [QueueId] -> IO [Either ErrorType q] Source #
getQueueLinkData :: s -> q -> LinkId -> IO (Either ErrorType QueueLinkData) Source #
addQueueLinkData :: s -> q -> LinkId -> QueueLinkData -> IO (Either ErrorType ()) Source #
deleteQueueLinkData :: s -> q -> IO (Either ErrorType ()) Source #
secureQueue :: s -> q -> SndPublicAuthKey -> IO (Either ErrorType ()) Source #
updateKeys :: s -> q -> NonEmpty RcvPublicAuthKey -> IO (Either ErrorType ()) Source #
addQueueNotifier :: s -> q -> NtfCreds -> IO (Either ErrorType (Maybe NtfCreds)) Source #
deleteQueueNotifier :: s -> q -> IO (Either ErrorType (Maybe NtfCreds)) Source #
suspendQueue :: s -> q -> IO (Either ErrorType ()) Source #
blockQueue :: s -> q -> BlockingInfo -> IO (Either ErrorType ()) Source #
unblockQueue :: s -> q -> IO (Either ErrorType ()) Source #
updateQueueTime :: s -> q -> SystemDate -> IO (Either ErrorType QueueRec) Source #
deleteStoreQueue :: s -> q -> IO (Either ErrorType QueueRec) Source #
getCreateService :: s -> ServiceRec -> IO (Either ErrorType ServiceId) Source #
setQueueService :: (PartyI p, ServiceParty p) => s -> q -> SParty p -> Maybe ServiceId -> IO (Either ErrorType ()) Source #
getQueueNtfServices :: s -> [(NotifierId, a)] -> IO (Either ErrorType ([(Maybe ServiceId, [(NotifierId, a)])], [(NotifierId, a)])) Source #
getServiceQueueCount :: (PartyI p, ServiceParty p) => s -> SParty p -> ServiceId -> IO (Either ErrorType Int64) Source #
Instances
data EntityCounts Source #
Constructors
| EntityCounts | |
Fields
| |
withLoadedQueues :: (Monoid a, QueueStoreClass q s) => s -> (q -> IO a) -> IO a Source #