summaryrefslogtreecommitdiff
path: root/examples/Main.hs
diff options
context:
space:
mode:
authorSam T <pxqr.sta@gmail.com>2013-07-08 04:52:10 +0400
committerSam T <pxqr.sta@gmail.com>2013-07-08 04:52:10 +0400
commitf7245e3cc7c5729b401bbbe3438a9f5b9dda211b (patch)
tree49e6bb1b0ef127e8540e32bb5369571dd66be333 /examples/Main.hs
parent83098eaf867b286048a41a16da47e5a1fd04d68d (diff)
~ Unliterate example.
Diffstat (limited to 'examples/Main.hs')
-rw-r--r--examples/Main.hs23
1 files changed, 23 insertions, 0 deletions
diff --git a/examples/Main.hs b/examples/Main.hs
new file mode 100644
index 00000000..bc3fbb8b
--- /dev/null
+++ b/examples/Main.hs
@@ -0,0 +1,23 @@
1module Main (main) where
2
3import Control.Monad
4import Network.BitTorrent
5import Network.BitTorrent.Extension
6import System.Environment
7import Control.Monad.Trans
8
9main :: IO ()
10main = do
11 [path] <- getArgs
12 torrent <- fromFile path
13 print (contentLayout "./" (tInfo torrent))
14 client <- newClient 100 [ExtDHT]
15 swarm <- newLeecher client torrent
16 storage <- swarm `bindTo` "/tmp/"
17 ppStorage storage >>= print
18 discover swarm $ do
19 liftIO $ print "connected to peer"
20 forever $ do
21 liftIO (getCurrentProgress client >>= print)
22 exchange storage
23 liftIO $ print "disconnected"