summaryrefslogtreecommitdiff
path: root/src/Network/BitTorrent/Tracker/RPC/UDP.hs
diff options
context:
space:
mode:
authorSam Truzjan <pxqr.sta@gmail.com>2013-11-30 13:30:19 +0400
committerSam Truzjan <pxqr.sta@gmail.com>2013-11-30 13:30:19 +0400
commit915dab01a9aefd59497ea97e76b45db3a865635f (patch)
tree502f003d19dc8bb025827e7f8fbe050e045af702 /src/Network/BitTorrent/Tracker/RPC/UDP.hs
parent5573c240b4c2e87cf2deb55939591edd0851f8b8 (diff)
Rename scrape datatypes
Diffstat (limited to 'src/Network/BitTorrent/Tracker/RPC/UDP.hs')
-rw-r--r--src/Network/BitTorrent/Tracker/RPC/UDP.hs9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/Network/BitTorrent/Tracker/RPC/UDP.hs b/src/Network/BitTorrent/Tracker/RPC/UDP.hs
index 0336db8d..bb5fe7e3 100644
--- a/src/Network/BitTorrent/Tracker/RPC/UDP.hs
+++ b/src/Network/BitTorrent/Tracker/RPC/UDP.hs
@@ -30,7 +30,6 @@ import Control.Monad
30import Data.ByteString (ByteString) 30import Data.ByteString (ByteString)
31import Data.IORef 31import Data.IORef
32import Data.List as L 32import Data.List as L
33import Data.Map as M
34import Data.Maybe 33import Data.Maybe
35import Data.Monoid 34import Data.Monoid
36import Data.Serialize 35import Data.Serialize
@@ -94,7 +93,7 @@ data Request = Connect
94 93
95data Response = Connected ConnectionId 94data Response = Connected ConnectionId
96 | Announced AnnounceInfo 95 | Announced AnnounceInfo
97 | Scraped [ScrapeInfo] 96 | Scraped [ScrapeEntry]
98 | Failed Text 97 | Failed Text
99 deriving Show 98 deriving Show
100 99
@@ -288,7 +287,7 @@ connectUDP tracker = do
288 case resp of 287 case resp of
289 Connected cid -> return cid 288 Connected cid -> return cid
290 Failed msg -> throwIO $ userError $ T.unpack msg 289 Failed msg -> throwIO $ userError $ T.unpack msg
291 _ -> throwIO $ userError "message type mismatch" 290 _ -> throwIO $ userError "connect: response type mismatch"
292 291
293connect :: URI -> IO UDPTracker 292connect :: URI -> IO UDPTracker
294connect uri = do 293connect uri = do
@@ -313,12 +312,12 @@ announce ann tracker = do
313 Announced info -> return info 312 Announced info -> return info
314 _ -> fail "announce: response type mismatch" 313 _ -> fail "announce: response type mismatch"
315 314
316scrape :: ScrapeQuery -> UDPTracker -> IO Scrape 315scrape :: ScrapeQuery -> UDPTracker -> IO ScrapeInfo
317scrape ihs tracker = do 316scrape ihs tracker = do
318 freshConnection tracker 317 freshConnection tracker
319 resp <- transaction tracker (Scrape ihs) 318 resp <- transaction tracker (Scrape ihs)
320 case resp of 319 case resp of
321 Scraped info -> return $ M.fromList $ L.zip ihs info 320 Scraped info -> return $ L.zip ihs info
322 _ -> fail "scrape: response type mismatch" 321 _ -> fail "scrape: response type mismatch"
323 322
324{----------------------------------------------------------------------- 323{-----------------------------------------------------------------------