yam-0.5.1: demo/Main.hs
module Main where
import Control.Monad.Logger.CallStack
import qualified Data.Salak as S
import Servant
import Yam
type UserApi
= "users" :> Get '[JSON] Text
:<|> "users" :> "error" :> Get '[JSON] Text
:<|> "users" :> "servant" :> Get '[JSON] Text
service :: ServerT UserApi App
service = userService :<|> errorService :<|> servantService
userService :: App Text
userService = do
logInfo $ "Hello: "
return "Hello"
errorService :: App Text
errorService = logError "No" >> return "No"
servantService :: App Text
servantService = throwS err401 "Servant"
main :: IO ()
main = do
p <- S.defaultPropertiesWithFile "yam_test.yml"
start p [] (Proxy :: Proxy UserApi) service