Commit-ID:  1ed7f47fd3af3c09d2cd64d1aff1c5b96d238111
Gitweb:     https://git.kernel.org/tip/1ed7f47fd3af3c09d2cd64d1aff1c5b96d238111
Author:     Adrian Hunter <adrian.hun...@intel.com>
AuthorDate: Fri, 12 Apr 2019 14:38:24 +0300
Committer:  Arnaldo Carvalho de Melo <a...@redhat.com>
CommitDate: Tue, 28 May 2019 18:37:45 -0300

perf scripts python: exported-sql-viewer.py: Use argparse module for argument 
parsing

The argparse module makes it easier to add new arguments.

Signed-off-by: Adrian Hunter <adrian.hun...@intel.com>
Cc: Jiri Olsa <jo...@redhat.com>
Link: http://lkml.kernel.org/r/20190412113830.4126-3-adrian.hun...@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/scripts/python/exported-sql-viewer.py | 21 +++++++++++++++------
 1 file changed, 15 insertions(+), 6 deletions(-)

diff --git a/tools/perf/scripts/python/exported-sql-viewer.py 
b/tools/perf/scripts/python/exported-sql-viewer.py
index 9ff92a130655..498b79454012 100755
--- a/tools/perf/scripts/python/exported-sql-viewer.py
+++ b/tools/perf/scripts/python/exported-sql-viewer.py
@@ -91,6 +91,7 @@
 from __future__ import print_function
 
 import sys
+import argparse
 import weakref
 import threading
 import string
@@ -3361,18 +3362,26 @@ class DBRef():
 # Main
 
 def Main():
-       if (len(sys.argv) < 2):
-               printerr("Usage is: exported-sql-viewer.py {<database name> | 
--help-only}");
-               raise Exception("Too few arguments")
-
-       dbname = sys.argv[1]
-       if dbname == "--help-only":
+       usage_str =     "exported-sql-viewer.py [--pyside-version-1] <database 
name>\n" \
+                       "   or: exported-sql-viewer.py --help-only"
+       ap = argparse.ArgumentParser(usage = usage_str, add_help = False)
+       ap.add_argument("dbname", nargs="?")
+       ap.add_argument("--help-only", action='store_true')
+       args = ap.parse_args()
+
+       if args.help_only:
                app = QApplication(sys.argv)
                mainwindow = HelpOnlyWindow()
                mainwindow.show()
                err = app.exec_()
                sys.exit(err)
 
+       dbname = args.dbname
+       if dbname is None:
+               ap.print_usage()
+               print("Too few arguments")
+               sys.exit(1)
+
        is_sqlite3 = False
        try:
                f = open(dbname, "rb")

Reply via email to