~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/transport/__init__.py

Readv patch from Johan Rydberg giving knits partial download support.

Show diffs side-by-side

added added

removed removed

Lines of Context:
244
244
        """
245
245
        raise NotImplementedError
246
246
 
 
247
    def readv(self, relpath, offsets):
 
248
        """Get parts of the file at the given relative path.
 
249
 
 
250
        :offsets: A list of (offset, size) tuples.
 
251
        :return: A list or generator of (offset, data) tuples
 
252
        """
 
253
        fp = self.get(relpath)
 
254
        for offset, size in offsets:
 
255
            fp.seek(offset)
 
256
            yield offset, fp.read(size)
 
257
 
247
258
    def get_multi(self, relpaths, pb=None):
248
259
        """Get a list of file-like objects, one for each entry in relpaths.
249
260