@@ -7,25 +7,21 @@ module Hakyll.Web.Preview.Server
8import Control.Monad.Trans (liftIO)
8import Control.Monad.Trans (liftIO)
10−import Snap.Types (Snap)
10+import qualified Snap.Core as Snap
11+import qualified Snap.Http.Server as Snap
11−import Snap.Util.FileServe ( DirectoryConfig (..), fancyDirectoryConfig
12+import qualified Snap.Util.FileServe as Snap
14−import Snap.Http.Server ( httpServe, setAccessLog, setErrorLog
15− , setPort, emptyConfig
18-- | Serve a given directory
14-- | Serve a given directory
20static :: FilePath -- ^ Directory to serve
16static :: FilePath -- ^ Directory to serve
21 -> (FilePath -> IO ()) -- ^ Pre-serve hook
17 -> (FilePath -> IO ()) -- ^ Pre-serve hook
22− -> Snap ()
18+ -> Snap.Snap ()
23static directory preServe =
19static directory preServe =
24− serveDirectoryWith directoryConfig directory
20+ Snap.serveDirectoryWith directoryConfig directory
26− directoryConfig :: DirectoryConfig Snap
22+ directoryConfig :: Snap.DirectoryConfig Snap.Snap
27− directoryConfig = fancyDirectoryConfig
23+ directoryConfig = Snap.fancyDirectoryConfig
28− { preServeHook = liftIO . preServe
24+ { Snap.preServeHook = liftIO . preServe
31-- | Main method, runs a static server in the given directory
27-- | Main method, runs a static server in the given directory
@@ -35,10 +31,10 @@ staticServer :: FilePath -- ^ Directory to serve
35 -> Int -- ^ Port to listen on
31 -> Int -- ^ Port to listen on
36 -> IO () -- ^ Blocks forever
32 -> IO () -- ^ Blocks forever
37staticServer directory preServe port =
33staticServer directory preServe port =
38− httpServe config $ static directory preServe
34+ Snap.httpServe config $ static directory preServe
40 -- Snap server config
36 -- Snap server config
41− config = setPort port
37+ config = Snap.setPort port
42− $ setAccessLog Nothing
38+ $ Snap.setAccessLog Snap.ConfigNoLog
43− $ setErrorLog Nothing
39+ $ Snap.setErrorLog Snap.ConfigNoLog
44− $ emptyConfig
40+ $ Snap.emptyConfig