Mercurial > hg
comparison hgext/convert/convcmd.py @ 11136:ecc8b18736da
convert: display files data retrieval progress
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Sun, 09 May 2010 22:50:42 +0200 |
parents | 73a4ed3bfef8 |
children | 87dcf758309d |
comparison
equal
deleted
inserted
replaced
11135:73a4ed3bfef8 | 11136:ecc8b18736da |
---|---|
69 if not type or name == type: | 69 if not type or name == type: |
70 return sink(ui, path) | 70 return sink(ui, path) |
71 except NoRepo, inst: | 71 except NoRepo, inst: |
72 ui.note(_("convert: %s\n") % inst) | 72 ui.note(_("convert: %s\n") % inst) |
73 raise util.Abort(_('%s: unknown repository type') % path) | 73 raise util.Abort(_('%s: unknown repository type') % path) |
74 | |
75 class progresssource(object): | |
76 def __init__(self, ui, source, filecount): | |
77 self.ui = ui | |
78 self.source = source | |
79 self.filecount = filecount | |
80 self.retrieved = 0 | |
81 | |
82 def getfile(self, file, rev): | |
83 self.retrieved += 1 | |
84 self.ui.progress(_('retrieving file'), self.retrieved, | |
85 item=file, total=self.filecount) | |
86 return self.source.getfile(file, rev) | |
87 | |
88 def lookuprev(self, rev): | |
89 return self.source.lookuprev(rev) | |
90 | |
91 def close(self): | |
92 self.ui.progress(_('retrieving file'), None) | |
74 | 93 |
75 class converter(object): | 94 class converter(object): |
76 def __init__(self, ui, source, dest, revmapfile, opts): | 95 def __init__(self, ui, source, dest, revmapfile, opts): |
77 | 96 |
78 self.source = source | 97 self.source = source |
302 self.ui.status(_('spliced in %s as parents of %s\n') % | 321 self.ui.status(_('spliced in %s as parents of %s\n') % |
303 (parents, rev)) | 322 (parents, rev)) |
304 parents = [self.map.get(p, p) for p in parents] | 323 parents = [self.map.get(p, p) for p in parents] |
305 except KeyError: | 324 except KeyError: |
306 parents = [b[0] for b in pbranches] | 325 parents = [b[0] for b in pbranches] |
326 source = progresssource(self.ui, self.source, len(files)) | |
307 newnode = self.dest.putcommit(files, copies, parents, commit, | 327 newnode = self.dest.putcommit(files, copies, parents, commit, |
308 self.source, self.map) | 328 source, self.map) |
329 source.close() | |
309 self.source.converted(rev, newnode) | 330 self.source.converted(rev, newnode) |
310 self.map[rev] = newnode | 331 self.map[rev] = newnode |
311 | 332 |
312 def convert(self, sortmode): | 333 def convert(self, sortmode): |
313 try: | 334 try: |