| Copyright | (C) 2020 Martins Erts |
|---|---|
| License | MIT |
| Maintainer | Martins Erts <martins.erts@gmail.com> |
| Stability | experimental |
| Safe Haskell | None |
| Language | Haskell2010 |
BfHaskell.DSL.Login
Description
Synopsis
- data LoginHandler m a where
- fetchToken :: Member LoginHandler r => Sem r SessionToken
- getAppKey :: Member LoginHandler r => Sem r Text
- getExpiry :: Member LoginHandler r => Sem r NominalDiffTime
- runLoginHandler :: Members [Embed IO, Output LogMessage, Error String] r => LoginCredentials -> Maybe HttpConfig -> InterpreterFor LoginHandler r
- newLoginCredentials :: Members '[Embed IO, Error String] r => Text -> Text -> Text -> FilePath -> FilePath -> NominalDiffTime -> Sem r LoginCredentials
- defaultLoginUrl :: Text
- data LoginCredentials = LoginCredentials {}
- newtype SessionToken = SessionToken Text
Effect
data LoginHandler m a where Source #
Login DSL
Constructors
| FetchToken | |
Fields
| |
| GetAppKey | |
Fields
| |
| GetExpiry | |
Fields
| |
Instances
| type DefiningModule (LoginHandler :: k -> Type -> Type) Source # | |
Defined in BfHaskell.LoginAPI.Types | |
Actions
fetchToken :: Member LoginHandler r => Sem r SessionToken Source #
Fetches session token by logging in
getAppKey :: Member LoginHandler r => Sem r Text Source #
Gets configured app secret
getExpiry :: Member LoginHandler r => Sem r NominalDiffTime Source #
Gets configured expiry interval
Interpretations
Arguments
| :: Members [Embed IO, Output LogMessage, Error String] r | |
| => LoginCredentials | Login credentials. Use |
| -> Maybe HttpConfig | Override |
| -> InterpreterFor LoginHandler r |
Runs LoginHandler interpreter
Helpers
Arguments
| :: Members '[Embed IO, Error String] r | |
| => Text | Username |
| -> Text | Password |
| -> Text | Secret application key |
| -> FilePath | Path to public certificate (PEM format) |
| -> FilePath | Path to private key (RSA PEM format) |
| -> NominalDiffTime | Token expires in seconds |
| -> Sem r LoginCredentials |
defaultLoginUrl :: Text Source #
Default login url
Data types
data LoginCredentials Source #
Details required for Betfair login
Constructors
| LoginCredentials | |
Fields
| |
newtype SessionToken Source #
Sesssion token retrieved using Login API
Constructors
| SessionToken Text |
Instances
| Show SessionToken Source # | |
Defined in BfHaskell.LoginAPI.Types Methods showsPrec :: Int -> SessionToken -> ShowS # show :: SessionToken -> String # showList :: [SessionToken] -> ShowS # | |