/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to object_store.py

Use BaseObjectStore.

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
    Tree,
22
22
    )
23
23
from dulwich.object_store import (
24
 
    MissingObjectFinder,
 
24
    BaseObjectStore,
25
25
    ObjectStoreIterator,
26
26
    )
27
27
import stat
49
49
    return BazaarObjectStore(repo, mapping)
50
50
 
51
51
 
52
 
class BazaarObjectStore(object):
 
52
class BazaarObjectStore(BaseObjectStore):
53
53
    """A Git-style object store backed onto a Bazaar repository."""
54
54
 
55
55
    def __init__(self, repository, mapping=None):
60
60
            self.mapping = mapping
61
61
        self._idmap = SqliteGitShaMap.from_repository(repository)
62
62
 
63
 
    def iter_shas(self, shas):
64
 
        return ObjectStoreIterator(self, shas)
65
 
 
66
63
    def _update_sha_map(self, stop_revision=None):
67
64
        if stop_revision is None:
68
65
            all_revids = self.repository.all_revision_ids()
221
218
            return self._get_tree(type_data[0], type_data[1], expected_sha=sha)
222
219
        else:
223
220
            raise AssertionError("Unknown object type '%s'" % type)
224
 
 
225
 
    def find_missing_objects(self, wants, graphwalker, progress=None):
226
 
        objfinder = MissingObjectFinder(self, wants, graphwalker)
227
 
        return self.iter_shas(iter(objfinder.next, None))