@Override public PointReader getReader(long start, long length) throws IOException { assert closed; assert start + length <= count: "start=" + start + " length=" + length + " count=" + count; assert expectedCount == 0 || count == expectedCount; return new OfflinePointReader(tempDir, name, packedBytesLength, start, length, longOrds, singleValuePerDoc); }
@Override public PointReader getSharedReader(long start, long length, List<Closeable> toCloseHeroically) throws IOException { if (sharedReader == null) { assert start == 0; assert length <= count; sharedReader = new OfflinePointReader(tempDir, name, packedBytesLength, 0, count, longOrds, singleValuePerDoc); toCloseHeroically.add(sharedReader); // Make sure the OfflinePointReader intends to verify its checksum: assert sharedReader.in instanceof ChecksumIndexInput; } else { assert start == nextSharedRead: "start=" + start + " length=" + length + " nextSharedRead=" + nextSharedRead; } nextSharedRead += length; return sharedReader; }
@Override public PointReader getReader(long start, long length) throws IOException { assert closed; assert start + length <= count: "start=" + start + " length=" + length + " count=" + count; assert expectedCount == 0 || count == expectedCount; return new OfflinePointReader(tempDir, name, packedBytesLength, start, length, longOrds, singleValuePerDoc); }
@Override public PointReader getSharedReader(long start, long length, List<Closeable> toCloseHeroically) throws IOException { if (sharedReader == null) { assert start == 0; assert length <= count; sharedReader = new OfflinePointReader(tempDir, name, packedBytesLength, 0, count, longOrds, singleValuePerDoc); toCloseHeroically.add(sharedReader); // Make sure the OfflinePointReader intends to verify its checksum: assert sharedReader.in instanceof ChecksumIndexInput; } else { assert start == nextSharedRead: "start=" + start + " length=" + length + " nextSharedRead=" + nextSharedRead; } nextSharedRead += length; return sharedReader; }