yesod-tls-1.4.0: Provides main functions using warp-tls for yesod projects

Safe HaskellNone
LanguageHaskell98

Yesod.Default.MainTLS

Synopsis

Documentation

defaultMain :: (Show env, Read env) => IO (AppConfig env extra) -> (AppConfig env extra -> IO Application) -> IO () Source

Run your app, taking environment and port settings from the commandline.

fromArgs helps parse a custom configuration

main :: IO ()
main = defaultMain (fromArgs parseExtra) makeApplication

defaultMainLog :: (Show env, Read env) => IO (AppConfig env extra) -> (AppConfig env extra -> IO (Application, LogFunc)) -> IO () Source

Same as defaultMain, but gets a logging function back as well as an Application to install Warp exception handlers.

Since 1.2.5

defaultRunner :: (Application -> IO ()) -> Application -> IO () Source

Run your application continously, listening for SIGINT and exiting when received

withYourSite :: AppConfig DefaultEnv -> Logger -> (Application -> IO a) -> IO ()
withYourSite conf logger f = do
    Settings.withConnectionPool conf $ \p -> do
        runConnectionPool (runMigration yourMigration) p
        defaultRunner f $ YourSite conf logger p

defaultDevelApp Source

Arguments

:: (Show env, Read env) 
=> IO (AppConfig env extra)

A means to load your development AppConfig

-> (AppConfig env extra -> IO Application)

Get your Application

-> IO (Int, Application) 

Run your development app using a custom environment type and loader function

type LogFunc = Loc -> LogSource -> LogLevel -> LogStr -> IO () Source