mirror of
https://github.com/commercialhaskell/stackage-server.git
synced 2026-01-12 04:08:29 +01:00
`local' method for MonadReader of SqlPersistT
This commit is contained in:
parent
3e17fb00df
commit
8cb0212f8b
@ -17,6 +17,7 @@ import qualified Network.Wai.Middleware.RequestLogger as RequestLogger
|
||||
import qualified Database.Persist
|
||||
import Control.Monad.Logger (runLoggingT, LoggingT)
|
||||
import Control.Monad.Reader (runReaderT, ReaderT)
|
||||
import Control.Monad.Trans.Control
|
||||
import Control.Concurrent (forkIO, threadDelay)
|
||||
import System.Log.FastLogger (newStdoutLoggerSet, defaultBufSize, flushLogStr)
|
||||
import Network.Wai.Logger (clockDateCacher)
|
||||
@ -191,6 +192,9 @@ instance MonadActive m => MonadActive (SqlPersistT m) where -- FIXME orphan upst
|
||||
monadActive = lift monadActive
|
||||
instance MonadReader env m => MonadReader env (SqlPersistT m) where
|
||||
ask = lift ask
|
||||
local f m =
|
||||
do stT <- liftWith (\run -> local f (run m))
|
||||
restoreT (return stT)
|
||||
|
||||
-- for yesod devel
|
||||
getApplicationDev :: IO (Int, Application)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user