/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

Support submodules during fetch.

Show diffs side-by-side

added added

removed removed

Lines of Context:
127
127
        else:
128
128
            raise AssertionError("Unknown length %d for %r" % (len(expected_sha), expected_sha))
129
129
 
130
 
    def _get_ie_object(self, entry, inv, unusual_modes):  
 
130
    def _get_ie_object(self, entry, inv, unusual_modes):
131
131
        if entry.kind == "directory":
132
132
            return self._get_tree(entry.file_id, inv.revision_id, inv, unusual_modes)
133
 
        else:
 
133
        elif entry.kind == "file":
134
134
            return self._get_blob(entry.file_id, entry.revision)
 
135
        else:
 
136
            raise AssertionError("unknown entry kind '%s'" % entry.kind)
135
137
 
136
138
    def _get_ie_object_or_sha1(self, entry, inv, unusual_modes):
137
139
        if entry.kind == "directory":
145
147
                    hexsha = ret.id
146
148
                self._idmap.add_entry(hexsha, "tree", (entry.file_id, inv.revision_id))
147
149
                return hexsha, ret
148
 
        else:
 
150
        elif entry.kind == "file":
149
151
            try:
150
152
                return self._idmap.lookup_blob(entry.file_id, entry.revision), None
151
153
            except KeyError:
152
154
                ret = self._get_ie_object(entry, inv, unusual_modes)
153
155
                self._idmap.add_entry(ret.id, "blob", (entry.file_id, entry.revision))
154
156
                return ret.id, ret
 
157
        else:
 
158
            raise AssertionError("unknown entry kind '%s'" % entry.kind)
155
159
 
156
160
    def _get_ie_sha1(self, entry, inv, unusual_modes):
157
161
        return self._get_ie_object_or_sha1(entry, inv, unusual_modes)[0]