~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/errors.py

- more error conversion

Show diffs side-by-side

added added

removed removed

Lines of Context:
54
54
# python exceptions?   A list of values with no names seems less useful 
55
55
# to me.
56
56
 
57
 
# TODO: perhaps convert the exception to a string at the moment it's 
58
 
# constructed to make sure it will succeed
 
57
# TODO: Perhaps convert the exception to a string at the moment it's 
 
58
# constructed to make sure it will succeed.  But that says nothing about
 
59
# exceptions that are never raised.
 
60
 
 
61
# TODO: Convert all the other error classes here to BzrNewError, and eliminate
 
62
# the old one.
59
63
 
60
64
 
61
65
class BzrError(StandardError):
94
98
                % (self.__class__.__name__, str(e))
95
99
 
96
100
 
97
 
class BzrCheckError(BzrError):
98
 
    pass
99
 
 
100
 
 
101
 
class InvalidRevisionNumber(BzrError):
102
 
    def __str__(self):
103
 
        return 'invalid revision number: %r' % self.args[0]
104
 
 
105
 
 
106
 
class InvalidRevisionId(BzrError):
107
 
    pass
 
101
class BzrCheckError(BzrNewError):
 
102
    """Internal check failed: %(message)s"""
 
103
    def __init__(self, message):
 
104
        self.message = message
 
105
 
 
106
 
 
107
class InvalidEntryName(BzrNewError):
 
108
    """Invalid entry name: %(name)s"""
 
109
    def __init__(self, name):
 
110
        self.name = name
 
111
 
 
112
 
 
113
class InvalidRevisionNumber(BzrNewError):
 
114
    """Invalid revision number %(revno)d"""
 
115
    def __init__(self, revno):
 
116
        self.revno = revno
 
117
 
 
118
 
 
119
class InvalidRevisionId(BzrNewError):
 
120
    """Invalid revision-id"""
108
121
 
109
122
 
110
123
class BzrCommandError(BzrError):
143
156
 
144
157
 
145
158
class LockError(Exception):
146
 
    """All exceptions from the lock/unlock functions should be from
147
 
    this exception class.  They will be translated as necessary. The
148
 
    original exception is available as e.original_error
149
 
    """
150
 
    def __init__(self, e=None):
151
 
        self.original_error = e
152
 
        if e:
153
 
            Exception.__init__(self, e)
154
 
        else:
155
 
            Exception.__init__(self)
 
159
    """Lock error"""
 
160
    # All exceptions from the lock/unlock functions should be from
 
161
    # this exception class.  They will be translated as necessary. The
 
162
    # original exception is available as e.original_error
156
163
 
157
164
 
158
165
class CommitNotPossible(LockError):
167
174
    """A write attempt was made in a read only transaction."""
168
175
 
169
176
 
170
 
class PointlessCommit(Exception):
 
177
class PointlessCommit(BzrNewError):
171
178
    """Commit failed because nothing was changed."""
172
179
 
173
180