no change = prettyfied wrt spaces, commas and the like
[sfa.git] / sfa / client / common.py
index b2e2fde..43a5b05 100644 (file)
@@ -3,7 +3,13 @@
 def optparse_listvalue_callback(option, opt, value, parser):
     former=getattr(parser.values,option.dest)
     if not former: former=[]
-    setattr(parser.values, option.dest, former+value.split(','))
+    # support for using e.g. sfi update -t slice -x the.slice.hrn -r none
+    # instead of -r '' which is painful and does not pass well through ssh
+    if value.lower()=='none':
+        newvalue=former
+    else:
+        newvalue=former+value.split(',')
+    setattr(parser.values, option.dest, newvalue)
 
 def optparse_dictvalue_callback (option, option_string, value, parser):
     try:
@@ -61,22 +67,23 @@ def terminal_render_node (record, options):
 
 
 ### used in sfi list
-def terminal_render (records,options):
+def terminal_render (records, options):
     # sort records by type
-    grouped_by_type={}
+    grouped_by_type = {}
     for record in records:
-        type=record['type']
-        if type not in grouped_by_type: grouped_by_type[type]=[]
+        type = record['type']
+        if type not in grouped_by_type:
+            grouped_by_type[type]=[]
         grouped_by_type[type].append(record)
-    group_types=grouped_by_type.keys()
+    group_types = grouped_by_type.keys()
     group_types.sort()
     for type in group_types:
-        group=grouped_by_type[type]
+        group = grouped_by_type[type]
 #        print 20 * '-', type
-        try:    renderer=eval('terminal_render_'+type)
-        except: renderer=terminal_render_default
-        for record in group: renderer(record,options)
-
+        try:    renderer = eval('terminal_render_' + type)
+        except: renderer = terminal_render_default
+        for record in group:
+            renderer(record, options)
 
 ####################
 def filter_records(type, records):