simplex-chat-6.5.0.7
Safe HaskellNone
LanguageHaskell2010

Simplex.Chat.Operators

Documentation

data OperatorTag Source #

Constructors

OTSimplex 
OTFlux 

Instances

Instances details
FromJSON OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser OperatorTag

parseJSONList :: Value -> Parser [OperatorTag]

omittedField :: Maybe OperatorTag

ToJSON OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

toJSON :: OperatorTag -> Value

toEncoding :: OperatorTag -> Encoding

toJSONList :: [OperatorTag] -> Value

toEncodingList :: [OperatorTag] -> Encoding

omitField :: OperatorTag -> Bool

Show OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> OperatorTag -> ShowS

show :: OperatorTag -> String

showList :: [OperatorTag] -> ShowS

Eq OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

(==) :: OperatorTag -> OperatorTag -> Bool

(/=) :: OperatorTag -> OperatorTag -> Bool

Ord OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

TextEncoding OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

textEncode :: OperatorTag -> Text

textDecode :: Text -> Maybe OperatorTag

FromField OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

fromField :: FieldParser OperatorTag #

ToField OperatorTag Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

toField :: OperatorTag -> SQLData #

data UsageConditions Source #

Constructors

UsageConditions 

Fields

Instances

Instances details
FromJSON UsageConditions Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser UsageConditions

parseJSONList :: Value -> Parser [UsageConditions]

omittedField :: Maybe UsageConditions

ToJSON UsageConditions Source # 
Instance details

Defined in Simplex.Chat.Operators

Show UsageConditions Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> UsageConditions -> ShowS

show :: UsageConditions -> String

showList :: [UsageConditions] -> ShowS

data UsageConditionsAction Source #

Constructors

UCAReview 

Fields

UCAAccepted 

Instances

Instances details
FromJSON UsageConditionsAction Source # 
Instance details

Defined in Simplex.Chat.Operators

ToJSON UsageConditionsAction Source # 
Instance details

Defined in Simplex.Chat.Operators

Show UsageConditionsAction Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> UsageConditionsAction -> ShowS

show :: UsageConditionsAction -> String

showList :: [UsageConditionsAction] -> ShowS

conditionsRequiredOrDeadline :: UTCTime -> UTCTime -> Maybe UTCTime Source #

data ConditionsAcceptance Source #

Constructors

CAAccepted 

Fields

CARequired 

Fields

Instances

Instances details
FromJSON ConditionsAcceptance Source # 
Instance details

Defined in Simplex.Chat.Operators

ToJSON ConditionsAcceptance Source # 
Instance details

Defined in Simplex.Chat.Operators

Show ConditionsAcceptance Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> ConditionsAcceptance -> ShowS

show :: ConditionsAcceptance -> String

showList :: [ConditionsAcceptance] -> ShowS

data AServerOperator Source #

Constructors

ASO (SDBStored s) (ServerOperator' s) 

Instances

Instances details
Show AServerOperator Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> AServerOperator -> ShowS

show :: AServerOperator -> String

showList :: [AServerOperator] -> ShowS

data ServerOperator' (s :: DBStored) Source #

Constructors

ServerOperator 

Fields

Instances

Instances details
DBStoredI s => FromJSON (ServerOperator' s) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser (ServerOperator' s)

parseJSONList :: Value -> Parser [ServerOperator' s]

omittedField :: Maybe (ServerOperator' s)

ToJSON (ServerOperator' s) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

toJSON :: ServerOperator' s -> Value

toEncoding :: ServerOperator' s -> Encoding

toJSONList :: [ServerOperator' s] -> Value

toEncodingList :: [ServerOperator' s] -> Encoding

omitField :: ServerOperator' s -> Bool

Show (ServerOperator' s) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> ServerOperator' s -> ShowS

show :: ServerOperator' s -> String

showList :: [ServerOperator' s] -> ShowS

data ServerOperatorRoles Source #

Constructors

ServerOperatorRoles 

Fields

Instances

Instances details
Show ServerOperatorRoles Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> ServerOperatorRoles -> ShowS

show :: ServerOperatorRoles -> String

showList :: [ServerOperatorRoles] -> ShowS

operatorRoles :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> ServerOperator -> ServerRoles Source #

data UserOperatorServers Source #

Constructors

UserOperatorServers 

Fields

Instances

Instances details
FromJSON UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

ToJSON UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

Show UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> UserOperatorServers -> ShowS

show :: UserOperatorServers -> String

showList :: [UserOperatorServers] -> ShowS

UserServersClass UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

Associated Types

type AServer UserOperatorServers 
Instance details

Defined in Simplex.Chat.Operators

Methods

operator' :: UserOperatorServers -> Maybe ServerOperator Source #

aUserServer' :: forall (p :: ProtocolType). AServer UserOperatorServers p -> AUserServer p Source #

servers' :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> UserOperatorServers -> [AServer UserOperatorServers p] Source #

type AServer UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

data ValidatedProtoServer (p :: ProtocolType) Source #

Constructors

ValidatedProtoServer 

Fields

  • unVPS :: Either Text (ProtoServerWithAuth p)
     

Instances

Instances details
Show (ValidatedProtoServer p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> ValidatedProtoServer p -> ShowS

show :: ValidatedProtoServer p -> String

showList :: [ValidatedProtoServer p] -> ShowS

class UserServersClass u where Source #

Associated Types

type AServer u = (s :: ProtocolType -> Type) | s -> u Source #

Methods

operator' :: u -> Maybe ServerOperator Source #

aUserServer' :: forall (p :: ProtocolType). AServer u p -> AUserServer p Source #

servers' :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> u -> [AServer u p] Source #

Instances

Instances details
UserServersClass UpdatedUserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

operator' :: UpdatedUserOperatorServers -> Maybe ServerOperator Source #

aUserServer' :: forall (p :: ProtocolType). AServer UpdatedUserOperatorServers p -> AUserServer p Source #

servers' :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> UpdatedUserOperatorServers -> [AServer UpdatedUserOperatorServers p] Source #

UserServersClass UserOperatorServers Source # 
Instance details

Defined in Simplex.Chat.Operators

Associated Types

type AServer UserOperatorServers 
Instance details

Defined in Simplex.Chat.Operators

Methods

operator' :: UserOperatorServers -> Maybe ServerOperator Source #

aUserServer' :: forall (p :: ProtocolType). AServer UserOperatorServers p -> AUserServer p Source #

servers' :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> UserOperatorServers -> [AServer UserOperatorServers p] Source #

type UserServer (p :: ProtocolType) = UserServer' 'DBStored p Source #

type NewUserServer (p :: ProtocolType) = UserServer' 'DBNew p Source #

data AUserServer (p :: ProtocolType) Source #

Constructors

AUS (SDBStored s) (UserServer' s p) 

Instances

Instances details
ProtocolTypeI p => FromJSON (AUserServer p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser (AUserServer p)

parseJSONList :: Value -> Parser [AUserServer p]

omittedField :: Maybe (AUserServer p)

Show (AUserServer p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> AUserServer p -> ShowS

show :: AUserServer p -> String

showList :: [AUserServer p] -> ShowS

data UserServer' (s :: DBStored) (p :: ProtocolType) Source #

Constructors

UserServer 

Fields

Instances

Instances details
(DBStoredI s, ProtocolTypeI p) => FromJSON (UserServer' s p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser (UserServer' s p)

parseJSONList :: Value -> Parser [UserServer' s p]

omittedField :: Maybe (UserServer' s p)

ProtocolTypeI p => ToJSON (UserServer' s p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

toJSON :: UserServer' s p -> Value

toEncoding :: UserServer' s p -> Encoding

toJSONList :: [UserServer' s p] -> Value

toEncodingList :: [UserServer' s p] -> Encoding

omitField :: UserServer' s p -> Bool

Show (UserServer' s p) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> UserServer' s p -> ShowS

show :: UserServer' s p -> String

showList :: [UserServer' s p] -> ShowS

presetServerAddress :: forall (s :: DBStored) (p :: ProtocolType). UserServer' s p -> ProtocolServer p Source #

data PresetOperator Source #

Constructors

PresetOperator 

Fields

Instances

Instances details
Show PresetOperator Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> PresetOperator -> ShowS

show :: PresetOperator -> String

showList :: [PresetOperator] -> ShowS

pServers :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> PresetOperator -> [NewUserServer p] Source #

operatorServersToUse :: forall (p :: ProtocolType). UserProtocol p => SProtocolType p -> PresetOperator -> Int Source #

presetServer' :: forall (p :: ProtocolType). Bool -> ProtocolServer p -> NewUserServer p Source #

presetServer :: forall (p :: ProtocolType). Bool -> ProtoServerWithAuth p -> NewUserServer p Source #

newUserServer :: forall (p :: ProtocolType). ProtoServerWithAuth p -> NewUserServer p Source #

newUserServer_ :: forall (p :: ProtocolType). Bool -> Bool -> ProtoServerWithAuth p -> NewUserServer p Source #

usageConditionsToAdd' :: Text -> Text -> Bool -> UTCTime -> [UsageConditions] -> (UsageConditions, [UsageConditions]) Source #

srvHost :: forall (s :: DBStored) (p :: ProtocolType). UserServer' s p -> NonEmpty TransportHost Source #

agentServerCfgs :: forall (p :: ProtocolType) (s :: DBStored). UserProtocol p => SProtocolType p -> [(Text, ServerOperator)] -> [UserServer' s p] -> [ServerCfg p] Source #

matchingHost :: Text -> TransportHost -> Bool Source #

operatorDomains :: forall (s :: DBStored). [ServerOperator' s] -> [(Text, ServerOperator' s)] Source #

class Box (b :: Type -> Type) where Source #

Methods

box :: a -> b a Source #

unbox :: b a -> a Source #

Instances

Instances details
Box Identity Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

box :: a -> Identity a Source #

unbox :: Identity a -> a Source #

Box ((,) (Maybe a)) Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

box :: a0 -> (Maybe a, a0) Source #

unbox :: (Maybe a, a0) -> a0 Source #

groupByOperator_ :: (Box f, Traversable f) => ([f (Maybe ServerOperator)], [UserServer 'PSMP], [UserServer 'PXFTP]) -> IO [f UserOperatorServers] Source #

data UserServersError Source #

Constructors

USENoServers 

Fields

USEStorageMissing 

Fields

USEProxyMissing 

Fields

USEDuplicateServer 

Fields

Instances

Instances details
FromJSON UserServersError Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

parseJSON :: Value -> Parser UserServersError

parseJSONList :: Value -> Parser [UserServersError]

omittedField :: Maybe UserServersError

ToJSON UserServersError Source # 
Instance details

Defined in Simplex.Chat.Operators

Show UserServersError Source # 
Instance details

Defined in Simplex.Chat.Operators

Methods

showsPrec :: Int -> UserServersError -> ShowS

show :: UserServersError -> String

showList :: [UserServersError] -> ShowS