/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

Move lookup_tree/lookup_blob to a separate object.

Show diffs side-by-side

added added

removed removed

Lines of Context:
154
154
            raise AssertionError("unknown entry kind '%s'" % entry.kind)
155
155
 
156
156
    def _get_ie_object_or_sha1(self, entry, inv, unusual_modes):
 
157
        # FIXME: Pass in?
 
158
        invshamap = self._idmap.get_inventory_sha_map(inv.revision_id)
157
159
        if entry.kind == "directory":
158
160
            try:
159
 
                return self._idmap.lookup_tree(entry.file_id, inv.revision_id), None
 
161
                return invshamap.lookup_tree(entry.file_id), None
160
162
            except (KeyError, NotImplementedError):
161
163
                ret = self._get_ie_object(entry, inv, unusual_modes)
162
164
                if ret is None:
169
171
                return hexsha, ret
170
172
        elif entry.kind in ("file", "symlink"):
171
173
            try:
172
 
                return self._idmap.lookup_blob(entry.file_id, entry.revision), None
 
174
                return invshamap.lookup_blob(entry.file_id, entry.revision), None
173
175
            except KeyError:
174
176
                ret = self._get_ie_object(entry, inv, unusual_modes)
175
177
                self._idmap.add_entry(ret.id, "blob", (entry.file_id,