module Yam.Config(
AppConfig(..)
, module Network.Wai.Handler.Warp
) where
import Network.Wai.Handler.Warp
import Salak
import Yam.Prelude
data AppConfig = AppConfig
{ name :: Text
, hostname :: String
, port :: Int
, slowlorisSize :: Int
} deriving (Eq, Show)
instance Default AppConfig where
def = AppConfig "application" "localhost" 8888 2048
instance FromProp AppConfig where
fromProp = AppConfig
<$> "name" .?: name
<*> "host" .?: hostname
<*> "port" .?: port
<*> "slowloris-size" .?: slowlorisSize