From: p2p Date: Fri, 29 Jan 2010 08:47:02 +0000 (+0000) Subject: start client Python scripts; base class and Transmission X-Git-Tag: getopt_long~201 X-Git-Url: http://p2p-next.cs.pub.ro/gitweb/?a=commitdiff_plain;h=73e96337dff18c65fb32c5a961f27ed62b29f91e;p=cs-p2p-next.git start client Python scripts; base class and Transmission --- diff --git a/scripts/start-clients/BitTorrentClientRun.py b/scripts/start-clients/BitTorrentClientRun.py new file mode 100644 index 0000000..eca5bde --- /dev/null +++ b/scripts/start-clients/BitTorrentClientRun.py @@ -0,0 +1,120 @@ +#!/usr/bin/env python + +""" + Base class for running BitTorrent client instances + 2010, Razvan Deaconescu, razvan.deaconescu@cs.pub.ro +""" + +""" + + + src/transmission-cli + + + + + -u + -d + -p + -l + -o + +""" + +""" + + 141.85.224.201 + 10150 + 172.30.10.0 + 10150 + 10122 + + + /home/p2p/p2p-clients/tribler/ + + + /home/p2p/p2p-clients/libtorrent/ + + + /home/p2p/p2p-clients/transmission/ + + + +""" + +""" + + 1 + triber + 512 + 256 + 9999 + /this/dir + /this/dir + + + + + + + + + +""" + +import sys +import os.path + +DEBUG = False + +class BitTorrentClientRun: + def __init__(self, base_path): + self.base_path = base_path + pass + + def config_client(self, simple_run_expr, logging_run_expr): + self.simple_run_expr = simple_run_expr + self.logging_run_expr = logging_run_expr + + def config_client2(self, prefix, suffix, file, run_type, + interpreter, download_dir_option, + logging_dir_option, port_option): + self.prefix = prefix + self.suffix = suffix + self.file = file + self.run_type = run_type + self.interpreter = interpreter + self.download_dir_option = download_dir_option + self.logging_dir_option = logging_dir_option + self.port_option = port_option + + def config_run(self, download_dir, logging_dir, port): + self.download_dir = download_dir + self.logging_dir = logging_dir + self.port = port + + def start2(self): + self.command = "%s %s %s/%s %s %s %s %s %s %d %s" % (self.prefix, self.interpreter, self.base_path, self.file, self.download_dir_option, self.download_dir, self.logging_dir_option, self.logging_dir, self.port_option, self.port, self.suffix) + print self.command + + def start(self): + self.simple_run_command = self.simple_run_expr.replace("$base_pat", self.base_path).replace("$download_dir", self.download_dir).replace("$logging_dir", self.logging).replace("$port", self.port) + self.logging_run_command = self.logging_run_expr.replace("$base_pat", self.base_path).replace("$download_dir", self.download_dir).replace("$logging", self.logging).replace("$port", self.port) + + print self.simple_run_command + print self.logging_run_command + +def main(): + + """ + Test case + """ + + btcr = BitTorrentClientRun("/home/p2p/p2p-clients/transmission/") + btcr.config_client("", "", "cli/transmissioncli", "executable", "", "--download-dir", "", "--port") + btcr.config_run("/home/p2p/p2p-dld/transmission/", "/home/p2p/p2p-log/transmission/", 10150) + btcr.start() + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/scripts/start-clients/TransmissionRun.py b/scripts/start-clients/TransmissionRun.py new file mode 100644 index 0000000..fb389e8 --- /dev/null +++ b/scripts/start-clients/TransmissionRun.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +""" + Base class for running Transmission client instances + 2010, Razvan Deaconescu, razvan.deaconescu@cs.pub.ro +""" + +import sys +import os.path +import BitTorrentClientRun + +DEBUG = False + +class TransmissionRun(BitTorrentClientRun): + def __init__(self, base_path): + self.base_path = base_path + simple_run_expr = "$base_path/cli/transmissioncli --download-dir $download_dir --port $port $torrent_file > $output_dir/$out_file" + logging_run_expr = "TR_DEBUG=2 $base_path/cli/transmissioncli --download-dir $download_dir --port $port $torrent_file 2> $logging_dir/$log_file > $output_dir/$out_file" + BitTorrentClientRun.config_client(simple_run_expr, logging_run_expr) + + +def main(): + + """ + Test case + """ + + tr = TransmissionRun("/home/p2p/p2p-clients/transmission/") + tr.config_run("/home/p2p/p2p-dld/transmission/", "/home/p2p/p2p-log/transmission/", 10150) + tr.start() + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/scripts/start-clients/aria-start b/scripts/start-clients/aria-start new file mode 100644 index 0000000..e69de29 diff --git a/scripts/start-clients/azureus-start b/scripts/start-clients/azureus-start new file mode 100644 index 0000000..e69de29 diff --git a/scripts/start-clients/hrktorrent-start b/scripts/start-clients/hrktorrent-start new file mode 100644 index 0000000..e69de29 diff --git a/scripts/start-clients/mainline-start b/scripts/start-clients/mainline-start new file mode 100644 index 0000000..e69de29 diff --git a/scripts/start-clients/transmission-start b/scripts/start-clients/transmission-start new file mode 100644 index 0000000..af2e4ba --- /dev/null +++ b/scripts/start-clients/transmission-start @@ -0,0 +1,6 @@ +#!/bin/bash + +ID=transmission +FILE=src/transmission-cli +RUN_TYPE=executable + diff --git a/scripts/start-clients/tribler-start b/scripts/start-clients/tribler-start new file mode 100644 index 0000000..e69de29