packages feed

wai-session 0.1.1 → 0.2

raw patch · 2 files changed

+10/−5 lines, 2 files

Files

Network/Wai/Session.hs view
@@ -5,9 +5,14 @@ import Data.Ratio (numerator, denominator) import Data.Time.Clock.POSIX (getPOSIXTime) import Data.String (fromString)-import Control.Monad.Trans.Class (lift)+import Control.Monad.IO.Class (liftIO) import Network.HTTP.Types (ResponseHeaders)-import Network.Wai (Middleware, Request(..), Response(..))+import Network.Wai (Middleware, Request(..))+#if MIN_VERSION_wai(2,0,0)+import Network.Wai.Internal (Response(ResponseBuilder,ResponseFile,ResponseSource))+#else+import Network.Wai (Response(ResponseBuilder,ResponseFile,ResponseSource))+#endif import Web.Cookie (parseCookies, renderSetCookie, SetCookie(..))  #if MIN_VERSION_vault(0,3,0)@@ -39,9 +44,9 @@ 	-- ^ 'Data.Vault.Vault' key to use when passing the session through 	-> Middleware withSession sessions cookieName cookieDefaults vkey app req = do-	(session, getNewCookie) <- lift $ sessions $ lookup cookieName =<< cookies+	(session, getNewCookie) <- liftIO $ sessions $ lookup cookieName =<< cookies 	resp <- app (req {vault = Vault.insert vkey session (vault req)})-	newCookieVal <- lift getNewCookie+	newCookieVal <- liftIO getNewCookie 	return $ mapHeader (\hs -> (setCookie, newCookie newCookieVal):hs) resp 	where 	newCookie v = Builder.toByteString $ renderSetCookie $ cookieDefaults {
wai-session.cabal view
@@ -1,5 +1,5 @@ name:            wai-session-version:         0.1.1+version:         0.2 cabal-version:   >= 1.8 license:         OtherLicense license-file:    COPYING