~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/errors.py

Merged kill-weave-errors into weave-fmt-plugin.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1361
1361
        self.error = error
1362
1362
 
1363
1363
 
1364
 
class WeaveError(BzrError):
1365
 
 
1366
 
    _fmt = "Error in processing weave: %(msg)s"
1367
 
 
1368
 
    def __init__(self, msg=None):
1369
 
        BzrError.__init__(self)
1370
 
        self.msg = msg
1371
 
 
1372
 
 
1373
 
class WeaveRevisionAlreadyPresent(WeaveError):
1374
 
 
1375
 
    _fmt = "Revision {%(revision_id)s} already present in %(weave)s"
1376
 
 
1377
 
    def __init__(self, revision_id, weave):
1378
 
 
1379
 
        WeaveError.__init__(self)
1380
 
        self.revision_id = revision_id
1381
 
        self.weave = weave
1382
 
 
1383
 
 
1384
 
class WeaveRevisionNotPresent(WeaveError):
1385
 
 
1386
 
    _fmt = "Revision {%(revision_id)s} not present in %(weave)s"
1387
 
 
1388
 
    def __init__(self, revision_id, weave):
1389
 
        WeaveError.__init__(self)
1390
 
        self.revision_id = revision_id
1391
 
        self.weave = weave
1392
 
 
1393
 
 
1394
 
class WeaveFormatError(WeaveError):
1395
 
 
1396
 
    _fmt = "Weave invariant violated: %(what)s"
1397
 
 
1398
 
    def __init__(self, what):
1399
 
        WeaveError.__init__(self)
1400
 
        self.what = what
1401
 
 
1402
 
 
1403
 
class WeaveParentMismatch(WeaveError):
1404
 
 
1405
 
    _fmt = "Parents are mismatched between two revisions. %(msg)s"
1406
 
 
1407
 
 
1408
 
class WeaveInvalidChecksum(WeaveError):
1409
 
 
1410
 
    _fmt = "Text did not match its checksum: %(msg)s"
1411
 
 
1412
 
 
1413
 
class WeaveTextDiffers(WeaveError):
1414
 
 
1415
 
    _fmt = ("Weaves differ on text content. Revision:"
1416
 
            " {%(revision_id)s}, %(weave_a)s, %(weave_b)s")
1417
 
 
1418
 
    def __init__(self, revision_id, weave_a, weave_b):
1419
 
        WeaveError.__init__(self)
1420
 
        self.revision_id = revision_id
1421
 
        self.weave_a = weave_a
1422
 
        self.weave_b = weave_b
1423
 
 
1424
 
 
1425
 
class WeaveTextDiffers(WeaveError):
1426
 
 
1427
 
    _fmt = ("Weaves differ on text content. Revision:"
1428
 
            " {%(revision_id)s}, %(weave_a)s, %(weave_b)s")
1429
 
 
1430
 
    def __init__(self, revision_id, weave_a, weave_b):
1431
 
        WeaveError.__init__(self)
1432
 
        self.revision_id = revision_id
1433
 
        self.weave_a = weave_a
1434
 
        self.weave_b = weave_b
1435
 
 
1436
 
 
1437
1364
class VersionedFileError(BzrError):
1438
1365
 
1439
1366
    _fmt = "Versioned file error"
1440
1367
 
1441
1368
 
 
1369
class ParentMismatch(VersionedFileError):
 
1370
 
 
1371
    _fmt = "Parents are mismatched between two revisions. %(name)s has %(p1)s vs %(p2)s"
 
1372
 
 
1373
    def __init__(self, name, p1, p2):
 
1374
        self.name = name
 
1375
        self.p1 = p1
 
1376
        self.p2 = p2
 
1377
 
 
1378
 
1442
1379
class RevisionNotPresent(VersionedFileError):
1443
1380
 
1444
1381
    _fmt = 'Revision {%(revision_id)s} not present in "%(file_id)s".'