Mercurial > jhg
comparison src/org/tmatesoft/hg/internal/DataAccess.java @ 420:6c22bdc0bdfd
Respect long offsets in revlogs
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Thu, 22 Mar 2012 22:56:01 +0100 |
parents | 528b6780a8bd |
children | fdd7d756dea0 |
comparison
equal
deleted
inserted
replaced
419:7f136a3fa671 | 420:6c22bdc0bdfd |
---|---|
31 public class DataAccess { | 31 public class DataAccess { |
32 public boolean isEmpty() { | 32 public boolean isEmpty() { |
33 return true; | 33 return true; |
34 } | 34 } |
35 // TODO throws IOException (few subclasses have non-trivial length() operation) | 35 // TODO throws IOException (few subclasses have non-trivial length() operation) |
36 // long length and offset are needed only in RevlogStream, makes no sense elsewhere | |
37 // because chunks Mercurial operates with fit into int (4 bytes actualLength field) | |
38 // For those that may face large pieces of data (actual data streams) there are #longLength | |
39 // and #longSeek() to implement | |
36 public int length() { | 40 public int length() { |
37 return 0; | 41 return 0; |
38 } | 42 } |
43 | |
44 public long longLength() { | |
45 return length(); | |
46 } | |
47 | |
48 public void longSeek(long offset) throws IOException { | |
49 seek(Internals.ltoi(offset)); | |
50 } | |
51 | |
39 /** | 52 /** |
40 * get this instance into initial state | 53 * get this instance into initial state |
41 * @throws IOException | 54 * @throws IOException |
42 * @return <code>this</code> for convenience | 55 * @return <code>this</code> for convenience |
43 */ | 56 */ |