diff options
Diffstat (limited to 'src/Network/BitTorrent/DHT/Session.hs')
-rw-r--r-- | src/Network/BitTorrent/DHT/Session.hs | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/Network/BitTorrent/DHT/Session.hs b/src/Network/BitTorrent/DHT/Session.hs index e770b1d3..208f8ec8 100644 --- a/src/Network/BitTorrent/DHT/Session.hs +++ b/src/Network/BitTorrent/DHT/Session.hs | |||
@@ -75,6 +75,7 @@ import Control.Monad.Logger | |||
75 | import Control.Monad.Reader | 75 | import Control.Monad.Reader |
76 | import Control.Monad.Trans.Control | 76 | import Control.Monad.Trans.Control |
77 | import Control.Monad.Trans.Resource | 77 | import Control.Monad.Trans.Resource |
78 | import Data.Conduit.Lazy | ||
78 | import Data.Default | 79 | import Data.Default |
79 | import Data.Fixed | 80 | import Data.Fixed |
80 | import Data.Hashable | 81 | import Data.Hashable |
@@ -91,11 +92,11 @@ import System.Random (randomIO) | |||
91 | import Text.PrettyPrint as PP hiding ((<>), ($$)) | 92 | import Text.PrettyPrint as PP hiding ((<>), ($$)) |
92 | import Text.PrettyPrint.Class | 93 | import Text.PrettyPrint.Class |
93 | 94 | ||
94 | import Data.Torrent.InfoHash | 95 | import Data.Torrent as Torrent |
95 | import Network.KRPC hiding (Options, def) | 96 | import Network.KRPC hiding (Options, def) |
96 | import qualified Network.KRPC as KRPC (def) | 97 | import qualified Network.KRPC as KRPC (def) |
97 | import Network.BitTorrent.Core | 98 | import Network.BitTorrent.Address |
98 | import Network.BitTorrent.Core.PeerAddr as P | 99 | import Network.BitTorrent.DHT.ContactInfo as P |
99 | import Network.BitTorrent.DHT.Message | 100 | import Network.BitTorrent.DHT.Message |
100 | import Network.BitTorrent.DHT.Routing as R | 101 | import Network.BitTorrent.DHT.Routing as R |
101 | import Network.BitTorrent.DHT.Token as T | 102 | import Network.BitTorrent.DHT.Token as T |
@@ -253,10 +254,8 @@ data Node ip = Node | |||
253 | -- | DHT keep track current session and proper resource allocation for | 254 | -- | DHT keep track current session and proper resource allocation for |
254 | -- safe multithreading. | 255 | -- safe multithreading. |
255 | newtype DHT ip a = DHT { unDHT :: ReaderT (Node ip) IO a } | 256 | newtype DHT ip a = DHT { unDHT :: ReaderT (Node ip) IO a } |
256 | deriving ( Functor, Applicative, Monad | 257 | deriving ( Functor, Applicative, Monad, MonadIO |
257 | , MonadIO, MonadBase IO | 258 | , MonadBase IO, MonadReader (Node ip), MonadThrow |
258 | , MonadReader (Node ip) | ||
259 | , MonadThrow, MonadUnsafeIO | ||
260 | ) | 259 | ) |
261 | 260 | ||
262 | instance MonadBaseControl IO (DHT ip) where | 261 | instance MonadBaseControl IO (DHT ip) where |