git://git.onelab.eu
/
sfa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
92039c2
)
add remove_element() method
author
Tony Mack
<tmack@paris.CS.Princeton.EDU>
Mon, 23 May 2011 16:09:39 +0000
(12:09 -0400)
committer
Tony Mack
<tmack@paris.CS.Princeton.EDU>
Mon, 23 May 2011 16:09:39 +0000
(12:09 -0400)
sfa/rspecs/rspec.py
patch
|
blob
|
history
diff --git
a/sfa/rspecs/rspec.py
b/sfa/rspecs/rspec.py
index
bf3db64
..
afc97bb
100755
(executable)
--- a/
sfa/rspecs/rspec.py
+++ b/
sfa/rspecs/rspec.py
@@
-90,6
+90,21
@@
class RSpec:
if opt.text == value:
elem.remove(opt)
if opt.text == value:
elem.remove(opt)
+ def remove_element(self, element_name, root_node = None):
+ """
+ Removes all occurences of an element from the tree. Start at
+ specified root_node if specified, otherwise start at tree's root.
+ """
+ if not root_node:
+ root_node = self.xml
+
+ elements = root_node.xpath('//rspecv2:%s | //%s' % (element_name, element_name), \
+ self.namespaces)
+ for element in elements:
+ parent = element.getparent()
+ parent.remove(element)
+
+
def merge(self, in_rspec):
pass
def merge(self, in_rspec):
pass