packages feed

wai-util 0.2 → 0.3

raw patch · 2 files changed

+12/−5 lines, 2 files

Files

Network/Wai/Util.hs view
@@ -27,10 +27,11 @@ import qualified Blaze.ByteString.Builder.Char.Utf8 as Builder import qualified Data.Aeson as Aeson import qualified Data.Text.Encoding as T+import qualified Data.Text.Lazy.Builder as TL import qualified Data.CaseInsensitive as CI  -- | Build an Application that supports multiple Accept types (Content Negotiation)-handleAcceptTypes :: (MonadIO m) => [(String, m Response)] -> Request -> m Response+handleAcceptTypes :: (Monad m) => [(String, m Response)] -> Request -> m Response handleAcceptTypes handlers req = 	fromMaybe notAcceptable handler 	where@@ -74,19 +75,25 @@ replaceHeader' (n, v) = ((n,v):) . filter ((/=n) . fst)  -- | Smart constructor to build a 'Response' from a 'String'-string :: (MonadIO m) => Status -> ResponseHeaders -> String -> m Response+string :: (Monad m) => Status -> ResponseHeaders -> String -> m Response string status headers = return . defHeader defCT . ResponseBuilder status headers . Builder.fromString 	where 	Just defCT = stringHeader ("Content-Type", "text/plain; charset=utf-8")  -- | Smart constructor to build a 'Response' from a 'Text'-text :: (MonadIO m) => Status -> ResponseHeaders -> Text -> m Response+text :: (Monad m) => Status -> ResponseHeaders -> Text -> m Response text status headers = return . defHeader defCT . ResponseBuilder status headers . Builder.fromText 	where 	Just defCT = stringHeader ("Content-Type", "text/plain; charset=utf-8") +-- | Smart constructor to build a 'Response' from a 'Data.Text.Lazy.Builder.Builder'+textBuilder :: (Monad m) => Status -> ResponseHeaders -> TL.Builder -> m Response+textBuilder status headers = return . defHeader defCT . ResponseBuilder status headers . Builder.fromLazyText . TL.toLazyText+	where+	Just defCT = stringHeader ("Content-Type", "text/plain; charset=utf-8")+ -- | Smart constructor to build a JSON 'Response' using Aeson-json :: (MonadIO m, Aeson.ToJSON a) => Status -> ResponseHeaders -> a -> m Response+json :: (Monad m, Aeson.ToJSON a) => Status -> ResponseHeaders -> a -> m Response json status headers = return . defHeader defCT . responseLBS status headers . Aeson.encode . Aeson.toJSON 	where 	Just defCT = stringHeader ("Content-Type", "application/json; charset=utf-8")
wai-util.cabal view
@@ -1,5 +1,5 @@ name:            wai-util-version:         0.2+version:         0.3 cabal-version:   >= 1.8 license:         OtherLicense license-file:    COPYING