{-# LANGUAGE OverloadedStrings #-}
module NetSpider.Spider.Config
( Config(..),
defConfig,
Host,
Port,
LogLevel(..)
) where
import Control.Monad.Logger (LogLevel(..))
import Data.Greskell (Key)
import Network.Greskell.WebSocket (Host, Port)
import qualified Network.Greskell.WebSocket as Gr
import NetSpider.Graph (VNode)
data Config n na fla =
Config
{ Config n na fla -> Host
wsHost :: Gr.Host,
Config n na fla -> Port
wsPort :: Gr.Port,
Config n na fla -> Key VNode n
nodeIdKey :: Key VNode n,
Config n na fla -> LogLevel
logThreshold :: LogLevel
}
defConfig :: Config n na fla
defConfig :: Config n na fla
defConfig =
Config :: forall n na fla.
Host -> Port -> Key VNode n -> LogLevel -> Config n na fla
Config
{ wsHost :: Host
wsHost = Host
"localhost",
wsPort :: Port
wsPort = Port
8182,
nodeIdKey :: Key VNode n
nodeIdKey = Key VNode n
"@node_id",
logThreshold :: LogLevel
logThreshold = LogLevel
LevelWarn
}