~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/workingtree_4.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-11-27 14:38:38 UTC
  • mfrom: (3009.2.29 no-inventory)
  • Revision ID: pqm@pqm.ubuntu.com-20071127143838-lkx79x6q91uptc1o
Avoid using Tree.inventory (even indirectly) from diff command

Show diffs side-by-side

added added

removed removed

Lines of Context:
1379
1379
    def get_root_id(self):
1380
1380
        return self.path2id('')
1381
1381
 
 
1382
    def id2path(self, file_id):
 
1383
        "Convert a file-id to a path."
 
1384
        entry = self._get_entry(file_id=file_id)
 
1385
        if entry == (None, None):
 
1386
            raise errors.NoSuchId(tree=self, file_id=file_id)
 
1387
        path_utf8 = osutils.pathjoin(entry[0][0], entry[0][1])
 
1388
        return path_utf8.decode('utf8')
 
1389
 
1382
1390
    def _get_parent_index(self):
1383
1391
        """Return the index in the dirstate referenced by this tree."""
1384
1392
        return self._dirstate.get_parent_ids().index(self._revision_id) + 1
1506
1514
        return StringIO(self.get_file_text(file_id))
1507
1515
 
1508
1516
    def get_file_lines(self, file_id):
1509
 
        ie = self.inventory[file_id]
1510
 
        return self._get_weave(file_id).get_lines(ie.revision)
 
1517
        entry = self._get_entry(file_id=file_id)[1]
 
1518
        if entry == None:
 
1519
            raise errors.NoSuchId(tree=self, file_id=file_id)
 
1520
        return self._get_weave(file_id).get_lines(entry[1][4])
1511
1521
 
1512
1522
    def get_file_size(self, file_id):
1513
1523
        return self.inventory[file_id].text_size
1565
1575
        return bool(self.path2id(filename))
1566
1576
 
1567
1577
    def kind(self, file_id):
1568
 
        return self.inventory[file_id].kind
 
1578
        entry = self._get_entry(file_id=file_id)[1]
 
1579
        if entry == None:
 
1580
            raise errors.NoSuchId(tree=self, file_id=file_id)
 
1581
        return dirstate.DirState._minikind_to_kind[entry[1][0]]
1569
1582
 
1570
1583
    def path_content_summary(self, path):
1571
1584
        """See Tree.path_content_summary."""