apiary-memcached 0.17.0.0 → 1.0.0
raw patch · 2 files changed
+18/−17 lines, 2 filesdep ~apiary
Dependency ranges changed: apiary
Files
- apiary-memcached.cabal +2/−2
- src/Web/Apiary/Memcached.hs +16/−15
apiary-memcached.cabal view
@@ -1,5 +1,5 @@ name: apiary-memcached-version: 0.17.0.0+version: 1.0.0 synopsis: memcached client for apiary web framework. -- description: license: MIT@@ -19,7 +19,7 @@ exposed-modules: Web.Apiary.Memcached other-modules: build-depends: base >=4.6 && <4.8- , apiary >=0.17 && <0.18+ , apiary >=1.0 && <1.1 , memcached-binary >=0.1 && <0.3 , data-default-class >=0.0 && <0.1 , binary >=0.7 && <0.8
src/Web/Apiary/Memcached.hs view
@@ -24,10 +24,11 @@ import Control.Applicative import Control.Monad.Trans.Maybe import Control.Monad.Trans.Control+import Control.Monad.Apiary.Action import Data.Default.Class import Data.Apiary.Extension-import Data.Apiary.Proxy+import Data.Apiary.Compat import qualified Data.Binary as B import qualified Data.Text as T import qualified Data.Text.Encoding as T@@ -94,40 +95,40 @@ withConnection (connectInfo cfg') (\c -> run $ m (Memcached c cfg')) memcached :: (Has Memcached exts, MonadIO m)- => (Connection -> IO a) -> ActionT exts m a+ => (Connection -> IO a) -> ActionT exts prms m a memcached q = do Memcached conn _ <- getExt Proxy liftIO $ q conn cache :: (MonadIO m, Has Memcached exts)- => Key -> ActionT exts m Value -> ActionT exts m Value-cache key actn = do+ => Key -> ActionT exts prms m Value -> ActionT exts prms m Value+cache ky actn = do Memcached conn cfg <- getExt Proxy case cacheConfig cfg of Nothing -> actn- Just cc -> liftIO (Maybe.get_ key conn) >>= \case+ Just cc -> liftIO (Maybe.get_ ky conn) >>= \case Just cr -> return cr Nothing -> do ar <- actn- liftIO $ set (cacheFlags cc key)- (cacheExpiry cc) key ar conn+ liftIO $ set (cacheFlags cc ky)+ (cacheExpiry cc) ky ar conn return ar cacheMaybe :: (MonadIO m, Has Memcached exts)- => Key -> ActionT exts m (Maybe Value)- -> ActionT exts m (Maybe Value)-cacheMaybe key actn = do+ => Key -> ActionT exts prms m (Maybe Value)+ -> ActionT exts prms m (Maybe Value)+cacheMaybe ky actn = do Memcached conn cfg <- getExt Proxy case cacheConfig cfg of Nothing -> actn- Just cc -> liftIO (Maybe.get_ key conn) >>= \case+ Just cc -> liftIO (Maybe.get_ ky conn) >>= \case Just cr -> return $ B.decode cr Nothing -> actn >>= \case Nothing -> do- liftIO $ set (cacheFlags cc key)- (cacheNotHitExpiry cc) key (B.encode (Nothing :: Maybe Value)) conn+ liftIO $ set (cacheFlags cc ky)+ (cacheNotHitExpiry cc) ky (B.encode (Nothing :: Maybe Value)) conn return Nothing Just ar -> do- liftIO $ set (cacheFlags cc key)- (cacheExpiry cc) key (B.encode $ Just ar) conn+ liftIO $ set (cacheFlags cc ky)+ (cacheExpiry cc) ky (B.encode $ Just ar) conn return (Just ar)