do not depend on types.StringTypes anymore
[sfa.git] / clientbin / getNodes.py
index d77bbbc..ec2e4a2 100644 (file)
@@ -4,18 +4,23 @@ import sys
 import os
 from optparse import OptionParser
 from pprint import pprint
-from types import StringTypes
+
+from sfa.util.py23 import StringType
 
 def create_parser():
     command = sys.argv[0]
     argv = sys.argv[1:]
     usage = "%(command)s [options]" % locals()
     description = """getNodes will open a rspec file and print all key/values, or filter results based on a given key or set of keys."""
-    parser = OptionParser(usage=usage,description=description)
-    parser.add_option("-i", "--infile", dest="infile", default=None,  help = "input rspec file")
-    parser.add_option("-t", "--tag", dest="tag", default=None,  help = "filter rspec for this tag")
-    parser.add_option("-a", "--attribute", dest="attribute", default=None,  help = "comma separated list of attributes to display")
-    parser.add_option("-r", "--recursive", dest="print_children", default=False,  action="store_true", help = "print the tag's child nodes")
+    parser = OptionParser(usage=usage, description=description)
+    parser.add_option("-i", "--infile", dest="infile", default=None,
+                      help = "input rspec file")
+    parser.add_option("-t", "--tag", dest="tag", default=None,
+                      help = "filter rspec for this tag")
+    parser.add_option("-a", "--attribute", dest="attribute", default=None,
+                      help = "comma separated list of attributes to display")
+    parser.add_option("-r", "--recursive", dest="print_children", default=False,  action="store_true",
+                      help = "print the tag's child nodes")
 
     return parser    
 
@@ -31,7 +36,7 @@ def print_dict(rdict, options, counter=1):
     if not isinstance(rdict, dict):
         raise "%s not a dict" % rdict 
     for (key, value) in rdict.iteritems():
-        if isinstance(value, StringTypes):
+        if isinstance(value, StringType):
             if (attributes and key in attributes) or not attributes:
                 print tab * counter + "%s: %s" % (key, value)
         elif isinstance(value, list):
@@ -82,6 +87,6 @@ def main():
 
 if __name__ == '__main__':
     try: main()
-    except Exception, e:
+    except Exception as e:
         raise
         print e