comparison mercurial/bundlerepo.py @ 30373:31de088945cd

manifest: add bundlemanifestlog support As part of deprecating manifest.manifest we need to make bundlerepo support manifestlog.
author Durham Goode <durham@fb.com>
date Fri, 11 Nov 2016 01:15:59 -0800
parents 1767723f71cf
children 11b8b740d54a
comparison
equal deleted inserted replaced
30372:7c7d845f8b64 30373:31de088945cd
185 self.filteredrevs = () 185 self.filteredrevs = ()
186 return changelog.changelog.revision(self, nodeorrev) 186 return changelog.changelog.revision(self, nodeorrev)
187 finally: 187 finally:
188 self.filteredrevs = oldfilter 188 self.filteredrevs = oldfilter
189 189
190 class bundlemanifest(bundlerevlog, manifest.manifest): 190 class bundlemanifest(bundlerevlog, manifest.manifestrevlog):
191 def __init__(self, opener, bundle, linkmapper, dirlogstarts=None, dir=''): 191 def __init__(self, opener, bundle, linkmapper, dirlogstarts=None, dir=''):
192 manifest.manifest.__init__(self, opener, dir=dir) 192 manifest.manifestrevlog.__init__(self, opener, dir=dir)
193 bundlerevlog.__init__(self, opener, self.indexfile, bundle, 193 bundlerevlog.__init__(self, opener, self.indexfile, bundle,
194 linkmapper) 194 linkmapper)
195 if dirlogstarts is None: 195 if dirlogstarts is None:
196 dirlogstarts = {} 196 dirlogstarts = {}
197 if self.bundle.version == "03": 197 if self.bundle.version == "03":
205 node = self.node(node) 205 node = self.node(node)
206 206
207 if node in self.fulltextcache: 207 if node in self.fulltextcache:
208 result = self.fulltextcache[node].tostring() 208 result = self.fulltextcache[node].tostring()
209 else: 209 else:
210 result = manifest.manifest.revision(self, nodeorrev) 210 result = manifest.manifestrevlog.revision(self, nodeorrev)
211 return result 211 return result
212 212
213 def dirlog(self, d): 213 def dirlog(self, d):
214 if d in self._dirlogstarts: 214 if d in self._dirlogstarts:
215 self.bundle.seek(self._dirlogstarts[d]) 215 self.bundle.seek(self._dirlogstarts[d])