~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/xml_serializer.py

  • Committer: Alexander Belchenko
  • Date: 2006-07-31 16:12:57 UTC
  • mto: (1711.2.111 jam-integration)
  • mto: This revision was merged to the branch mainline in revision 1906.
  • Revision ID: bialix@ukr.net-20060731161257-91a231523255332c
new official bzr.ico

Show diffs side-by-side

added added

removed removed

Lines of Context:
28
28
    from cElementTree import (ElementTree, SubElement, Element,
29
29
                              XMLTreeBuilder, fromstring, tostring)
30
30
    import elementtree
31
 
    ParseError = SyntaxError
32
31
except ImportError:
33
32
    mutter('WARNING: using slower ElementTree; consider installing cElementTree'
34
33
           " and make sure it's on your PYTHONPATH")
36
35
                                              Element, XMLTreeBuilder,
37
36
                                              fromstring, tostring)
38
37
    import util.elementtree as elementtree
39
 
    from xml.parsers.expat import ExpatError as ParseError
40
38
 
41
 
from bzrlib import errors
 
39
from bzrlib.errors import BzrError
42
40
 
43
41
 
44
42
class Serializer(object):
52
50
        return tostring(self._pack_inventory(inv)) + '\n'
53
51
 
54
52
    def read_inventory_from_string(self, xml_string):
55
 
        try:
56
 
            return self._unpack_inventory(fromstring(xml_string))
57
 
        except ParseError, e:
58
 
            raise errors.UnexpectedInventoryFormat(e)
 
53
        return self._unpack_inventory(fromstring(xml_string))
59
54
 
60
55
    def read_inventory(self, f):
61
 
        try:
62
 
            return self._unpack_inventory(self._read_element(f))
63
 
        except ParseError, e:
64
 
            raise errors.UnexpectedInventoryFormat(e)
 
56
        return self._unpack_inventory(self._read_element(f))
65
57
 
66
58
    def write_revision(self, rev, f):
67
59
        self._write_element(self._pack_revision(rev), f)