]> p2p-next.cs.pub.ro Git - cs-p2p-next.git/commitdiff
ppf/new: Add argument parsing functionality to python script files.
authorMariana Mărășoiu <mariana.marasoiu@gmail.com>
Fri, 16 Sep 2011 03:34:29 +0000 (06:34 +0300)
committerMariana Mărășoiu <mariana.marasoiu@gmail.com>
Fri, 16 Sep 2011 03:34:29 +0000 (06:34 +0300)
ppf/new/enhance_swarm_description.py
ppf/new/parse_session.py
ppf/new/parse_swarm.py

index e3f62ac7e91d4fa3cadf1945b8d39415c333c03b..21fdb37d15cc60fd961fe69247b73ad3a817de85 100644 (file)
@@ -1,33 +1,52 @@
 """
 Enhance swarm description file.
 
+Receive swarm description and access configuration files as arguments.
 Add swarm and session information to database. Add session id to each
 session entry in the swarm description file based on database entries.
 
 2011, Razvan Deaconescu, razvan.deaconescu@cs.pub.ro
+2011, Mariana Marasoiu, mariana.marasoiu@gmail.com
 """
 
 import sys
+import argparse
 
 import config
 import storage
 import top
 
-# TODO: Define default values for swarm description and access config files.
+# Define default values for swarm description and access config files.
+default_swarm_description_file = "tests/config.sample.ini"
+default_access_config_file = "tests/access.sample.ini"
 
 def main():
     """Sample usage:
-    python enhance_swarm_description.py -s /path/to/swarm-description-file -a /path/to/access-config-file
+    python enhance_swarm_description.py -s /path/to/swarm-description-file
+        -a /path/to/access-config-file
     """
+
     # Arguments are swarm description file and access config file.
-    # TODO: Parse arguments.
-    swarm_description = config.SwarmDescription.load(swarm_description_file)
-    access_config = config.AccessConfig.load(access_config_file)
-    swarm_writer = get_swarm_writer(access_config)
+    parser = argparse.ArgumentParser()
+    parser.add_argument("-s", metavar="/path/to/swarm-description-file",
+                        default=default_swarm_description_file)
+    parser.add_argument("-a", metavar="/path/to/access-config-file",
+                        default=default_access_config_file)
+
+    args = parser.parse_args()
+    swarm_description_file = args.s
+    access_config_file = args.a
+
+    swarm_description = config.SwarmDescription()
+    swarm_description.load(swarm_description_file)
+    access_config = config.AccessConfig()
+    access_config.load(access_config_file)
+    swarm_writer = access_config.get_swarm_writer()
 
     # Enhance swarm description with session id. Store enhanced file.
     top.enhance_swarm_description(swarm_description, swarm_writer)
-    swarm_description.store(swarm_description_file)
+    swarm_description_file_enhanced = swarm_description_file + ".enhanced"
+    swarm_description.store(swarm_description_file_enhanced)
 
 if __name__ == "__main__":
     sys.exit(main())
index 96b539b53fad2aeacd3f15a49ac729426397df9f..07df698be4faff3063608bb1b2c5b10c6a172297 100644 (file)
@@ -5,25 +5,42 @@ Parse session compressed file.
 """
 
 import sys
+import argparse
 
 import config
 import storage
 import top
 
-# TODO: Define default values for session and access config files.
+# Define default values for swarm description and access config files.
+default_swarm_description_file = "tests/config.sample.ini"
+default_access_config_file = "tests/access.sample.ini"
 
 def main():
     """Sample usage:
-    python parse_session.py -s /path/to/swarm-description-file -a /path/to/access-config-file session-id
+    python parse_session.py -s /path/to/swarm-description-file
+        -a /path/to/access-config-file session-id
     """
-
-    # Arguments are swarm description file, access config file and section id.
-    # TODO: Parse arguments.
-    swarm_description = config.SwarmDescription.load(swarm_description_file)
-    session_entry = swarm_description.get_session_entry(section_id)
-
-    access_config = config.AccessConfig.load(access_config_file)
-    swarm_writer = get_swarm_writer(access_config)
+    
+    # Arguments are swarm description file and access config file.
+    parser = argparse.ArgumentParser()
+    parser.add_argument("-s", metavar="/path/to/swarm-description-file",
+                        default=default_swarm_description_file)
+    parser.add_argument("-a", metavar="/path/to/access-config-file",
+                        default=default_access_config_file)
+    parser.add_argument("session_id", type=int)
+
+    args = parser.parse_args()
+    swarm_description_file = args.s
+    access_config_file = args.a
+    session_id = args.session_id
+
+    swarm_description = config.SwarmDescription()
+    swarm_description.load(swarm_description_file)
+    session_entry = swarm_description.get_session_entry(session_id)
+
+    access_config = config.AccessConfig()
+    access_config.load(access_config_file)
+    swarm_writer = access_config.get_swarm_writer()
 
     top.parse_session(session_entry, swarm_writer)
 
index e51c805a528898cafd676abb9d215bcda6fbd2cc..f4d45004adde7f7d338ae8fd38c5a1551afba727 100644 (file)
@@ -8,26 +8,42 @@ through the help of the access configuration file.
 """
 
 import sys
+import argparse
 
 import config
 import storage
 import top
 
-# TODO: Define default values for swarm and access config files.
+# Define default values for swarm description and access config files.
+default_swarm_description_file = "tests/config.sample.ini"
+default_access_config_file = "tests/access.sample.ini"
 
 def main():
     """Sample usage:
-    python parse_swarm.py -s /path/to/swarm-description-file -a /path/to/access-config-file
+    python parse_swarm.py -s /path/to/swarm-description-file
+        -a /path/to/access-config-file
     """
     # Arguments are swarm description file and access config file.
-    # TODO: Parse arguments.
-    swarm_description = config.SwarmDescription.load(swarm_description_file)
-    access_config = config.AccessConfig.load(access_config_file)
-    swarm_writer = get_swarm_writer(access_config)
+    parser = argparse.ArgumentParser()
+    parser.add_argument("-s", metavar="/path/to/swarm-description-file",
+                        default=default_swarm_description_file)
+    parser.add_argument("-a", metavar="/path/to/access-config-file",
+                        default=default_access_config_file)
+
+    args = parser.parse_args()
+    swarm_description_file = args.s
+    access_config_file = args.a
+
+    swarm_description = config.SwarmDescription()
+    swarm_description.load(swarm_description_file)
+    access_config = config.AccessConfig()
+    access_config.load(access_config_file)
+    swarm_writer = access_config.get_swarm_writer()
 
     # Enhance swarm description with session id. Store enhanced file.
     top.enhance_swarm_description(swarm_description, swarm_writer)
-    swarm_description.store(swarm_description_file)
+    swarm_description_file_enhanced = swarm_description_file + ".enhanced"
+    swarm_description.store(swarm_description_file_enhanced)
 
     # Do actual parsing.
     top.parse_swarm(swarm_description, swarm_writer)