replaced str() calls with unicode()
[OpenSRF.git] / src / python / osrf / utils.py
index fe637f1..e07ba7a 100644 (file)
@@ -3,14 +3,14 @@ import xml.dom.minidom, re
 def osrfXMLFileToObject(filename):
     """Turns the contents of an XML file into a Python object"""
     doc = xml.dom.minidom.parse(filename)
-    obj = osrfXMLNodeToObject(doc.childNodes[0])
+    obj = osrfXMLNodeToObject(doc.documentElement)
     doc.unlink()
     return obj
 
 def osrfXMLStringToObject(string):
     """Turns an XML string into a Python object"""
     doc = xml.dom.minidom.parseString(string)
-    obj = osrfXMLNodeToObject(doc.childNodes[0])
+    obj = osrfXMLNodeToObject(doc.documentElement)
     doc.unlink()
     return obj
 
@@ -57,7 +57,7 @@ def osrfXMLNodeToObject(xmlNode):
         # If the node has no element children, clean up the text content 
         # and use that as the data
         xmlNode = xmlNode.childNodes[0] # extract the text node
-        data = re.compile('^\s*').sub('', str(xmlNode.nodeValue))
+        data = re.compile('^\s*').sub('', unicode(xmlNode.nodeValue))
         data = re.compile('\s*$').sub('', data)
 
         obj[nodeName] = data
@@ -72,7 +72,7 @@ def osrfObjectFindPath(obj, path, idx=None):
 
     parts = []
 
-    if re.compile('/').search(path):
+    if re.search('/', path):
         parts = path.split('/')
     else:
         parts = path.split('.')