From 26e3730d4a3e2c139585c33e7da4c05f72ace0de Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mariana=20M=C4=83r=C4=83=C8=99oiu?= Date: Fri, 16 Sep 2011 06:34:29 +0300 Subject: [PATCH] ppf/new: Add argument parsing functionality to python script files. --- ppf/new/enhance_swarm_description.py | 33 +++++++++++++++++++------ ppf/new/parse_session.py | 37 ++++++++++++++++++++-------- ppf/new/parse_swarm.py | 30 ++++++++++++++++------ 3 files changed, 76 insertions(+), 24 deletions(-) diff --git a/ppf/new/enhance_swarm_description.py b/ppf/new/enhance_swarm_description.py index e3f62ac..21fdb37 100644 --- a/ppf/new/enhance_swarm_description.py +++ b/ppf/new/enhance_swarm_description.py @@ -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()) diff --git a/ppf/new/parse_session.py b/ppf/new/parse_session.py index 96b539b..07df698 100644 --- a/ppf/new/parse_session.py +++ b/ppf/new/parse_session.py @@ -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) diff --git a/ppf/new/parse_swarm.py b/ppf/new/parse_swarm.py index e51c805..f4d4500 100644 --- a/ppf/new/parse_swarm.py +++ b/ppf/new/parse_swarm.py @@ -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) -- 2.20.1