aboutsummaryrefslogtreecommitdiffstats
path: root/djangorestframework/parsers.py
diff options
context:
space:
mode:
authorMichele Lazzeri2012-01-11 19:34:08 +0100
committerMichele Lazzeri2012-01-11 19:34:08 +0100
commit27d22cff6cbdbbebbf92304934e0a1f1be87c1c4 (patch)
tree980854681ef4660ca4a09e6af302df55d2ba0951 /djangorestframework/parsers.py
parentab83a2faaedd9813887af0382f7199702461f60f (diff)
downloaddjango-rest-framework-27d22cff6cbdbbebbf92304934e0a1f1be87c1c4.tar.bz2
Revert "update author"
This reverts commit f461acbaf28aa79d82cffaf65b886c3d884cc5f4.
Diffstat (limited to 'djangorestframework/parsers.py')
-rw-r--r--djangorestframework/parsers.py33
1 files changed, 3 insertions, 30 deletions
diff --git a/djangorestframework/parsers.py b/djangorestframework/parsers.py
index c5eefaec..c218e5ee 100644
--- a/djangorestframework/parsers.py
+++ b/djangorestframework/parsers.py
@@ -189,38 +189,11 @@ class XMLParser(BaseParser):
"""
data = {}
tree = ET.parse(stream)
- data = self._xml_convert(tree.getroot())
-
+ for child in tree.getroot().getchildren():
+ data[child.tag] = self._type_convert(child.text)
+
return (data, None)
- def _xml_convert(self, element):
- """
- convert the xml `element` into the corresponding python object
-
- `data` The python object representation of xml `element`.
- """
-
- children = element.getchildren()
-
- if len(children) == 0:
- return self._type_convert(element.text)
- else:
- if element.tag == "resource":
- data = []
- for child in children:
- data.append(self._xml_convert(child))
- else:
- if children[0].tag == "resource":
- data = []
- for child in children:
- data.append(self._xml_convert(child))
- else:
- data = {}
- for child in children:
- data[child.tag] = self._xml_convert(child)
-
- return data
-
def _type_convert(self, value):
"""
Converts the value returned by the XMl parse into the equivalent