[libvirt] [PATCHv2 3/8] python: Remove use of xmllib in generator.py

Cole Robinson crobinso at redhat.com
Fri Oct 2 17:46:48 UTC 2009


xmllib has been deprecated since python 2.0, and running the generator throws
a warning. Move to using xml.sax

Signed-off-by: Cole Robinson <crobinso at redhat.com>
---
 python/generator.py |   23 +++++++++--------------
 1 files changed, 9 insertions(+), 14 deletions(-)

diff --git a/python/generator.py b/python/generator.py
index 3d142e9..9ec91d8 100755
--- a/python/generator.py
+++ b/python/generator.py
@@ -25,32 +25,27 @@ else:
 #
 #######################################################################
 import os
-import xmllib
+import xml.sax
 
 debug = 0
 
-class SlowParser(xmllib.XMLParser):
-    """slow but safe standard parser, based on the XML parser in
-       Python's standard library."""
-
-    def __init__(self, target):
-        self.unknown_starttag = target.start
-        self.handle_data = target.data
-        self.handle_cdata = target.cdata
-        self.unknown_endtag = target.end
-        xmllib.XMLParser.__init__(self)
-
 def getparser():
     # Attach parser to an unmarshalling object. return both objects.
     target = docParser()
-    return SlowParser(target), target
+    parser = xml.sax.make_parser()
+    parser.setContentHandler(target)
+    return parser, target
 
-class docParser:
+class docParser(xml.sax.handler.ContentHandler):
     def __init__(self):
         self._methodname = None
         self._data = []
         self.in_function = 0
 
+        self.startElement = self.start
+        self.endElement = self.end
+        self.characters = self.data
+
     def close(self):
         if debug:
             print "close"
-- 
1.6.5.rc2




More information about the libvir-list mailing list