X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=sfatables%2Fcommands%2FAdd.py;h=f5193eb6d8a7fe5ca558c2521b710baa7358a9f3;hb=6c41d17ff2f98c362ad1db112d22bede960d8202;hp=e0c190fbce0b16d85dcd19526ee047bf97a5f4b0;hpb=88665387c6da04b7a87d21baec918f18fdda29c3;p=sfa.git diff --git a/sfatables/commands/Add.py b/sfatables/commands/Add.py index e0c190fb..f5193eb6 100644 --- a/sfatables/commands/Add.py +++ b/sfatables/commands/Add.py @@ -33,15 +33,19 @@ class Add(Command): p = xmldoc.xpathNewContext() supplied_arguments = options.arguments - element = options.element + if (hasattr(options,'element') and options.element): + element = options.element + else: + element='*' + for option in supplied_arguments: option_name = option['name'] option_value = getattr(options,option_name) if (hasattr(options,option_name)): - context = p.xpathEval("//rule[@element='%s' or @element='*']/argument[name='%s']"%element, option_name) + context = p.xpathEval("//rule[@element='%s' or @element='*']/argument[name='%s']"%(element, option_name)) if (not context): - raise Exception('Unknown option %s for match %s'%(option,option['name'])) + raise Exception('Unknown option %s for match %s and element %s'%(option,option['name'], element)) else: # Add the value of option valueNode = libxml2.newNode('value')