From 0acd60292225044505bd0bbcc34693d5b7bc042f Mon Sep 17 00:00:00 2001 From: jbj Date: Sun, 13 Jun 2004 17:37:50 +0000 Subject: [PATCH] Follow python naming conventions more closely. Use XML_READER_FOO_TYPE rather than numbers. CVS patchset: 7314 CVS date: 2004/06/13 17:37:50 --- tools/expatparser.py | 19 ++++++++++--------- tools/libxmlparser.py | 33 ++++++++++++++++----------------- 2 files changed, 26 insertions(+), 26 deletions(-) diff --git a/tools/expatparser.py b/tools/expatparser.py index 23e192c..0723f39 100644 --- a/tools/expatparser.py +++ b/tools/expatparser.py @@ -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 = '' 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) diff --git a/tools/libxmlparser.py b/tools/libxmlparser.py index c816cb9..1871482 100644 --- a/tools/libxmlparser.py +++ b/tools/libxmlparser.py @@ -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 = '' 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) -- 2.7.4