snaplet-amqp 1.0.1.0 → 1.0.1.1
raw patch · 2 files changed
+14/−16 lines, 2 filesdep +monad-controlPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: monad-control
API changes (from Hackage documentation)
- Snap.Snaplet.AMQP: runAmqp :: HasAmqpPool m => ((Connection, Channel) -> b) -> m b
+ Snap.Snaplet.AMQP: runAmqp :: HasAmqpPool m => (Connection -> Channel -> IO ()) -> m ()
Files
- snaplet-amqp.cabal +2/−1
- src/Snap/Snaplet/AMQP.hs +12/−15
snaplet-amqp.cabal view
@@ -1,5 +1,5 @@ Name: snaplet-amqp-Version: 1.0.1.0+Version: 1.0.1.1 Synopsis: Snap framework snaplet for the AMQP library Homepage: https://github.com/ixmatus/snaplet-amqp License: BSD3@@ -47,6 +47,7 @@ base >= 4.4 && < 5, snap >= 0.13 && < 0.14, resource-pool >= 0.2 && < 0.3,+ monad-control >= 0.3 && < 0.4, amqp >= 0.10 && < 0.11, bytestring >= 0.9 && < 11, lens >= 4 && < 5,
src/Snap/Snaplet/AMQP.hs view
@@ -1,9 +1,10 @@-{-# LANGUAGE ConstraintKinds #-}-{-# LANGUAGE FlexibleContexts #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE ScopedTypeVariables #-}-{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE ConstraintKinds #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE TypeFamilies #-} module Snap.Snaplet.AMQP ( initAMQP@@ -18,11 +19,7 @@ import Data.Configurator import Data.Configurator.Types import Data.Pool-import Network.AMQP (Channel, Connection,- ConnectionOpts (..),- closeConnection,- defaultConnectionOpts, openChannel,- openConnection'', plain)+import Network.AMQP import Paths_snaplet_amqp import Snap.Snaplet @@ -80,9 +77,9 @@ ------------------------------------------------------------------------------- -- | Runs an AMQP action in any monad with a HasAmqpPoolonn instance.-runAmqp :: (HasAmqpPool m) => ((Connection, Channel) -> b) -> m b+runAmqp :: (HasAmqpPool m) => (Connection -> Channel -> IO ()) -> m () runAmqp action = do pool <- getAmqpPool- return =<< liftIO $ withResource pool $ \conn -> do- chan <- openChannel conn- return $ action (conn, chan)+ liftIO $ withResource pool $! \conn -> do+ chan <- liftIO $ openChannel conn+ liftIO $! action conn chan