private void copyDiskDataToCacheBuffer(byte[] diskData, int offsetInDiskData, int sizeToCopy,
ByteBuffer cacheBuffer, DiskRange[] cacheRanges, int cacheRangeIx, long cacheRangeStart) {
int bbPos = cacheBuffer.position();
long cacheRangeEnd = cacheRangeStart + sizeToCopy;
if (LOG.isTraceEnabled()) {
LOG.trace("Caching [" + cacheRangeStart + ", " + cacheRangeEnd + ")");
}
cacheRanges[cacheRangeIx] = new DiskRange(cacheRangeStart, cacheRangeEnd);
cacheBuffer.put(diskData, offsetInDiskData, sizeToCopy);
cacheBuffer.position(bbPos);
}