Follow python naming conventions more closely.
authorjbj <devnull@localhost>
Sun, 13 Jun 2004 17:37:50 +0000 (17:37 +0000)
committerjbj <devnull@localhost>
Sun, 13 Jun 2004 17:37:50 +0000 (17:37 +0000)
Use XML_READER_FOO_TYPE rather than numbers.

CVS patchset: 7314
CVS date: 2004/06/13 17:37:50

tools/expatparser.py
tools/libxmlparser.py

index 23e192c..0723f39 100644 (file)
@@ -8,9 +8,9 @@ class RpmExpatParser:
            print "unable to open %s" % (fn)
            return
        self.p = xml.parsers.expat.ParserCreate()
-       self.p.StartElementHandler = self.start_element
-       self.p.EndElementHandler = self.end_element
-       self.p.CharacterDataHandler = self.char_data
+       self.p.StartElementHandler = self.start_element_handler
+       self.p.EndElementHandler = self.end_element_handler
+       self.p.CharacterDataHandler = self.character_data_handler
        self.n = 2
        self.lvl = 0
        self.cdata = 0
@@ -22,7 +22,7 @@ class RpmExpatParser:
     def pad(self):
        return (' ' * (self.n * self.lvl))
 
-    def start_element(self, name, attrs):
+    def start_element_handler(self, name, attrs):
        l = self.pad() + '<' + name
        if attrs.has_key(u'name'):
            l = l + ' name="' + attrs[u'name'] + '"'
@@ -33,7 +33,7 @@ class RpmExpatParser:
        self.lvl = self.lvl + 1
        self.cdata = 1
     
-    def end_element(self, name):
+    def end_element_handler(self, name):
        self.lvl = self.lvl - 1
        l = '</' + name + '>'
        if self.lvl < 2:
@@ -42,7 +42,7 @@ class RpmExpatParser:
        self.spew(l)
        self.cdata = 0
 
-    def char_data(self, data):
+    def character_data_handler(self, data):
        if self.cdata == 1:
            if not data.isspace():
                self.cdata = 2
@@ -52,9 +52,10 @@ class RpmExpatParser:
     def read(self, *args):
        return self.f.read(*args)
 
-    def ParseFile(self):
+    def parseFile(self):
        return self.p.ParseFile(self)
 
 p = RpmExpatParser('time.xml')
-ret = p.ParseFile()
-print ret
+ret = p.parseFile()
+if ret != 1:
+    print "Error parsing and validating %s" % (fn)
index c816cb9..1871482 100644 (file)
@@ -20,7 +20,7 @@ class RpmLibxml2Parser:
     def pad(self):
        return (' ' * (self.n * self.lvl))
 
-    def start_element(self, name, attrs):
+    def start_element_handler(self, name, attrs):
        l = self.pad() + '<' + name
        if attrs.has_key(u'name'):
            l = l + ' name="' + attrs[u'name'] + '"'
@@ -31,7 +31,7 @@ class RpmLibxml2Parser:
        self.lvl = self.lvl + 1
        self.cdata = 1
     
-    def end_element(self, name):
+    def end_element_handler(self, name):
        self.lvl = self.lvl - 1
        l = '</' + name + '>'
        if self.lvl < 2:
@@ -40,7 +40,7 @@ class RpmLibxml2Parser:
        self.spew(l)
        self.cdata = 0
 
-    def char_data(self, data):
+    def character_data_handler(self, data):
        if self.cdata == 1:
            if not data.isspace():
                self.cdata = 2
@@ -48,23 +48,22 @@ class RpmLibxml2Parser:
            self.spew(data)
 
     def processNode(self):
-#      self.n = self.p.Depth() + 1
-       if self.p.NodeType() == 1:      # Element
+       if self.p.NodeType() == libxml2.XML_READER_TYPE_ELEMENT:        # 1
            name = self.p.Name()
            attrs = {}
            while self.p.MoveToNextAttribute():
                attrs[self.p.Name()] = self.p.Value()
-           self.start_element(name, attrs)
-       elif self.p.NodeType() == 3:    # Text within element
-           self.char_data(self.p.Value())
-       elif self.p.NodeType() == 10:   # Start element
-           self.char_data(self.p.Value())
-       elif self.p.NodeType() == 14:   # Text
-           self.char_data(self.p.Value())
-       elif self.p.NodeType() == 15:   # End element
-           self.end_element(self.p.Name())
+           self.start_element_handler(name, attrs)
+       elif self.p.NodeType() == libxml2.XML_READER_TYPE_TEXT:         # 3
+           self.character_data_handler(self.p.Value())
+       elif self.p.NodeType() == libxml2.XML_READER_TYPE_DOCUMENT_TYPE:# 10
+           self.character_data_handler(self.p.Value())
+       elif self.p.NodeType() == libxml2.XML_READER_TYPE_SIGNIFICANT_WHITESPACE:# 14
+           self.character_data_handler(self.p.Value())
+       elif self.p.NodeType() == libxml2.XML_READER_TYPE_END_ELEMENT:  # 15
+           self.end_element_handler(self.p.Name())
        else:
-           print "%d %d %s %d %s" % (self.p.Depth(), self.p.NodeType(),
+           print "%d %d %s IsEmptyElement:%d %s" % (self.p.Depth(), self.p.NodeType(),
                               self.p.Name(), self.p.IsEmptyElement(),
                               self.p.Value())
            while self.p.MoveToNextAttribute():
@@ -74,7 +73,7 @@ class RpmLibxml2Parser:
     def read(self, *args):
        return self.p.Read(*args)
 
-    def ParseFile(self):
+    def parseFile(self):
        ret = self.read()
        while ret == 1:
            self.processNode()
@@ -83,6 +82,6 @@ class RpmLibxml2Parser:
 
 fn = 'time.xml'
 p = RpmLibxml2Parser(fn)
-ret = p.ParseFile()
+ret = p.parseFile()
 if ret != 0:
     print "Error parsing and validating %s" % (fn)