| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Simplex.Messaging.Agent.Env.SQLite
Synopsis
- type AM' a = ReaderT Env IO a
- type AM a = ExceptT AgentErrorType (ReaderT Env IO) a
- data AgentConfig = AgentConfig {
- tcpPort :: Maybe ServiceName
- rcvAuthAlg :: AuthAlg
- sndAuthAlg :: AuthAlg
- connIdBytes :: Int
- tbqSize :: Natural
- smpCfg :: ProtocolClientConfig SMPVersion
- ntfCfg :: ProtocolClientConfig NTFVersion
- xftpCfg :: XFTPClientConfig
- reconnectInterval :: RetryInterval
- messageRetryInterval :: RetryInterval2
- userNetworkInterval :: Int
- userOfflineDelay :: NominalDiffTime
- messageTimeout :: NominalDiffTime
- connDeleteDeliveryTimeout :: NominalDiffTime
- helloTimeout :: NominalDiffTime
- quotaExceededTimeout :: NominalDiffTime
- persistErrorInterval :: NominalDiffTime
- initialCleanupDelay :: Int64
- cleanupInterval :: Int64
- cleanupBatchSize :: Int
- initialLogStatsDelay :: Int64
- logStatsInterval :: Int64
- cleanupStepInterval :: Int
- maxWorkerRestartsPerMin :: Int
- storedMsgDataTTL :: NominalDiffTime
- rcvFilesTTL :: NominalDiffTime
- sndFilesTTL :: NominalDiffTime
- xftpConsecutiveRetries :: Int
- xftpMaxRecipientsPerRequest :: Int
- deleteErrorCount :: Int
- ntfCron :: Word16
- ntfBatchSize :: Int
- ntfSubFirstCheckInterval :: NominalDiffTime
- ntfSubCheckInterval :: NominalDiffTime
- subsBatchSize :: Int
- caCertificateFile :: FilePath
- privateKeyFile :: FilePath
- certificateFile :: FilePath
- rcvExpireCount :: Int
- rcvExpireInterval :: NominalDiffTime
- e2eEncryptVRange :: VersionRangeE2E
- smpAgentVRange :: VersionRangeSMPA
- smpClientVRange :: VersionRangeSMPC
- data InitialAgentServers = InitialAgentServers {
- smp :: Map UserId (NonEmpty (ServerCfg 'PSMP))
- ntf :: [NtfServer]
- xftp :: Map UserId (NonEmpty (ServerCfg 'PXFTP))
- netCfg :: NetworkConfig
- presetDomains :: [HostName]
- presetServers :: [SMPServer]
- data ServerCfg p = ServerCfg {
- server :: ProtoServerWithAuth p
- operator :: Maybe OperatorId
- enabled :: Bool
- roles :: ServerRoles
- data ServerRoles = ServerRoles {}
- type OperatorId = Int64
- data UserServers p = UserServers {
- storageSrvs :: NonEmpty (Maybe OperatorId, ProtoServerWithAuth p)
- proxySrvs :: NonEmpty (Maybe OperatorId, ProtoServerWithAuth p)
- knownHosts :: Set TransportHost
- data NetworkConfig = NetworkConfig {
- socksProxy :: Maybe SocksProxyWithAuth
- socksMode :: SocksMode
- hostMode :: HostMode
- requiredHostMode :: Bool
- sessionMode :: TransportSessionMode
- smpProxyMode :: SMPProxyMode
- smpProxyFallback :: SMPProxyFallback
- smpWebPortServers :: SMPWebPortServers
- tcpConnectTimeout :: NetworkTimeout
- tcpTimeout :: NetworkTimeout
- tcpTimeoutPerKb :: Int64
- rcvConcurrency :: Int
- tcpKeepAlive :: Maybe KeepAliveOpts
- smpPingInterval :: Int64
- smpPingCount :: Int
- logTLSErrors :: Bool
- presetServerCfg :: Bool -> ServerRoles -> Maybe OperatorId -> ProtoServerWithAuth p -> ServerCfg p
- allRoles :: ServerRoles
- mkUserServers :: NonEmpty (ServerCfg p) -> UserServers p
- serverHosts :: ProtocolServer p -> Set TransportHost
- defaultAgentConfig :: AgentConfig
- defaultReconnectInterval :: RetryInterval
- data Env = Env {
- config :: AgentConfig
- store :: DBStore
- random :: TVar ChaChaDRG
- randomServer :: TVar StdGen
- ntfSupervisor :: NtfSupervisor
- xftpAgent :: XFTPAgent
- multicastSubscribers :: TMVar Int
- newSMPAgentEnv :: AgentConfig -> DBStore -> IO Env
- createAgentStore :: DBOpts -> MigrationConfig -> IO (Either MigrationError DBStore)
- data NtfSupervisor = NtfSupervisor {
- ntfTkn :: TVar (Maybe NtfToken)
- ntfSubQ :: TBQueue (NtfSupervisorCommand, NonEmpty ConnId)
- ntfWorkers :: TMap NtfServer Worker
- ntfSMPWorkers :: TMap SMPServer Worker
- ntfTknDelWorkers :: TMap NtfServer Worker
- data NtfSupervisorCommand
- data XFTPAgent = XFTPAgent {
- xftpWorkDir :: TVar (Maybe FilePath)
- xftpRcvWorkers :: TMap (Maybe XFTPServer) Worker
- xftpSndWorkers :: TMap (Maybe XFTPServer) Worker
- xftpDelWorkers :: TMap XFTPServer Worker
- data Worker = Worker {
- workerId :: Int
- doWork :: TMVar ()
- action :: TMVar (Maybe (Weak ThreadId))
- restarts :: TVar RestartCount
- data RestartCount = RestartCount {
- restartMinute :: Int64
- restartCount :: Int
- updateRestartCount :: SystemTime -> RestartCount -> RestartCount
Documentation
type AM a = ExceptT AgentErrorType (ReaderT Env IO) a Source #
data AgentConfig Source #
Constructors
data InitialAgentServers Source #
Constructors
| InitialAgentServers | |
Fields
| |
Constructors
| ServerCfg | |
Fields
| |
Instances
| ProtocolTypeI p => FromJSON (ServerCfg p) Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods parseJSON :: Value -> Parser (ServerCfg p) parseJSONList :: Value -> Parser [ServerCfg p] omittedField :: Maybe (ServerCfg p) | |
| ProtocolTypeI p => ToJSON (ServerCfg p) Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods toJSON :: ServerCfg p -> Value toEncoding :: ServerCfg p -> Encoding toJSONList :: [ServerCfg p] -> Value toEncodingList :: [ServerCfg p] -> Encoding | |
| Show (ServerCfg p) Source # | |
data ServerRoles Source #
Constructors
| ServerRoles | |
Instances
| FromJSON ServerRoles Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods parseJSON :: Value -> Parser ServerRoles parseJSONList :: Value -> Parser [ServerRoles] omittedField :: Maybe ServerRoles | |
| ToJSON ServerRoles Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods toJSON :: ServerRoles -> Value toEncoding :: ServerRoles -> Encoding toJSONList :: [ServerRoles] -> Value toEncodingList :: [ServerRoles] -> Encoding omitField :: ServerRoles -> Bool | |
| Show ServerRoles Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods showsPrec :: Int -> ServerRoles -> ShowS show :: ServerRoles -> String showList :: [ServerRoles] -> ShowS | |
type OperatorId = Int64 Source #
data UserServers p Source #
Constructors
| UserServers | |
Fields
| |
data NetworkConfig Source #
network configuration for the client
Constructors
| NetworkConfig | |
Fields
| |
Instances
| FromJSON NetworkConfig Source # | |
Defined in Simplex.Messaging.Client Methods parseJSON :: Value -> Parser NetworkConfig parseJSONList :: Value -> Parser [NetworkConfig] omittedField :: Maybe NetworkConfig | |
| ToJSON NetworkConfig Source # | |
Defined in Simplex.Messaging.Client Methods toJSON :: NetworkConfig -> Value toEncoding :: NetworkConfig -> Encoding toJSONList :: [NetworkConfig] -> Value toEncodingList :: [NetworkConfig] -> Encoding omitField :: NetworkConfig -> Bool | |
| Show NetworkConfig Source # | |
Defined in Simplex.Messaging.Client Methods showsPrec :: Int -> NetworkConfig -> ShowS show :: NetworkConfig -> String showList :: [NetworkConfig] -> ShowS | |
| Eq NetworkConfig Source # | |
Defined in Simplex.Messaging.Client | |
presetServerCfg :: Bool -> ServerRoles -> Maybe OperatorId -> ProtoServerWithAuth p -> ServerCfg p Source #
mkUserServers :: NonEmpty (ServerCfg p) -> UserServers p Source #
serverHosts :: ProtocolServer p -> Set TransportHost Source #
Constructors
| Env | |
Fields
| |
newSMPAgentEnv :: AgentConfig -> DBStore -> IO Env Source #
createAgentStore :: DBOpts -> MigrationConfig -> IO (Either MigrationError DBStore) Source #
data NtfSupervisor Source #
Constructors
| NtfSupervisor | |
Fields
| |
data NtfSupervisorCommand Source #
Constructors
| NSCCreate | |
| NSCSmpDelete | |
| NSCDeleteSub |
Instances
| Show NtfSupervisorCommand Source # | |
Defined in Simplex.Messaging.Agent.Env.SQLite Methods showsPrec :: Int -> NtfSupervisorCommand -> ShowS show :: NtfSupervisorCommand -> String showList :: [NtfSupervisorCommand] -> ShowS | |
Constructors
| XFTPAgent | |
Fields
| |
data RestartCount Source #
Constructors
| RestartCount | |
Fields
| |
updateRestartCount :: SystemTime -> RestartCount -> RestartCount Source #