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:
69ec1b0
)
added RecordSpec class
author
Tony Mack
<tmack@cs.princeton.edu>
Tue, 10 Mar 2009 14:25:20 +0000
(14:25 +0000)
committer
Tony Mack
<tmack@cs.princeton.edu>
Tue, 10 Mar 2009 14:25:20 +0000
(14:25 +0000)
geni/util/rspec.py
patch
|
blob
|
history
diff --git
a/geni/util/rspec.py
b/geni/util/rspec.py
index
0fef470
..
0831d91
100644
(file)
--- a/
geni/util/rspec.py
+++ b/
geni/util/rspec.py
@@
-178,14
+178,14
@@
class Rspec():
def elementNode(tagname, rd):
element = minidom.Element(tagname)
for key in rd.keys():
def elementNode(tagname, rd):
element = minidom.Element(tagname)
for key in rd.keys():
- if isinstance(rd[key], StringTypes):
- element.setAttribute(key,
rd[key]
)
+ if isinstance(rd[key], StringTypes)
or isinstance(rd[key], int)
:
+ element.setAttribute(key,
str(rd[key])
)
elif isinstance(rd[key], dict):
child = elementNode(key, rd[key])
element.appendChild(child)
elif isinstance(rd[key], list):
for item in rd[key]:
elif isinstance(rd[key], dict):
child = elementNode(key, rd[key])
element.appendChild(child)
elif isinstance(rd[key], list):
for item in rd[key]:
- child = elementNode(key,
item
)
+ child = elementNode(key,
{key:item}
)
element.appendChild(child)
return element
element.appendChild(child)
return element
@@
-272,4
+272,19
@@
class Rspec():
'EBoolean' : bool,
'EFloat' : float,
'EDate' : date}
'EBoolean' : bool,
'EFloat' : float,
'EDate' : date}
+
+
+
+class RecordSpec(Rspec):
+
+ def parseDict(self, rdict, include_doc = False):
+ """
+ Convert a dictionary into a dom object and store it.
+ """
+ self.rootNode = self.dict2dom(rdict, include_doc)
+
+ def dict2dom(self, rdict, include_doc = False):
+ record_dict = {'record': rdict}
+ return Rspec.dict2dom(self, record_dict, include_doc)
+
# vim:ts=4:expandtab
# vim:ts=4:expandtab