packages feed

trasa-server 0.5.1 → 0.5.2

raw patch · 2 files changed

+5/−12 lines, 2 files

Files

src/Trasa/Server.hs view
@@ -5,7 +5,8 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE ScopedTypeVariables #-} -{-# OPTIONS_GHC -Wall -Werror #-}+{-# OPTIONS_GHC -Wall -Werror -Wwarn=deprecations #-}+ module Trasa.Server   ( TrasaT   , TrasaEnv(..)@@ -14,7 +15,6 @@   , serveWith   ) where - import Control.Applicative (liftA2, Alternative(..)) import Control.Monad (join, MonadPlus(..)) import Control.Monad.Except (ExceptT,runExceptT,mapExceptT,MonadError(..),MonadIO(..))@@ -33,7 +33,6 @@ import qualified Network.HTTP.Media.RenderHeader as N import qualified Network.HTTP.Types.Status as N import qualified Network.Wai as Wai-import qualified Network.Wai.Parse as Wai  import Trasa.Core @@ -42,8 +41,6 @@ data TrasaEnv = TrasaEnv   { trasaHeaders :: Headers   , trasaQueryString :: QueryString-  , trasaRequestBody :: BS.ByteString-  , trasaRequestBodyType :: Maybe Wai.RequestBodyType   }  newtype TrasaT m a = TrasaT@@ -77,10 +74,8 @@   :: TrasaT m a   -> M.Map (CI BS.ByteString) T.Text -- ^ Headers   -> QueryString -- ^ Query string parameters-  -> BS.ByteString -- ^ Request body-  -> Maybe Wai.RequestBodyType -- ^ Request body type from @wai-extra@   -> m (Either TrasaErr a, M.Map (CI BS.ByteString) T.Text)-runTrasaT trasa headers queryStrings requestBody mrequestBodyType = (flip runReaderT (TrasaEnv headers queryStrings requestBody mrequestBodyType) . flip runStateT M.empty . runExceptT  . unTrasaT) trasa+runTrasaT trasa headers queryStrings = (flip runReaderT (TrasaEnv headers queryStrings) . flip runStateT M.empty . runExceptT  . unTrasaT) trasa  mapTrasaT :: (forall x. m x -> n x) -> TrasaT m a -> TrasaT n a mapTrasaT eta = TrasaT . mapExceptT (mapStateT (mapReaderT eta)) . unTrasaT@@ -107,12 +102,10 @@           Just accepts -> do             content <- for (M.lookup hContentType headers >>= N.parseAccept . TE.encodeUtf8) $ \typ ->               Content typ <$> Wai.strictRequestBody req-            requestBody <- Wai.getRequestBodyChunk req             let queryStrings = decodeQuery (Wai.queryString req)                 url = Url (Wai.pathInfo req) queryStrings                 dispatch = dispatchWith toMeta makeResponse madeRouter method accepts url content-                mrequestBodyType = Wai.getRequestBodyType req-            runTrasaT dispatch headers queryStrings requestBody mrequestBodyType >>= \case+            runTrasaT dispatch headers queryStrings >>= \case               (resErr,newHeaders) -> case join resErr of                 Left (TrasaErr stat errBody) ->                   respond (Wai.responseLBS stat (encodeHeaders newHeaders) errBody)
trasa-server.cabal view
@@ -2,7 +2,7 @@ name:   trasa-server version:-  0.5.1+  0.5.2 synopsis:   Type safe web server description: