public int flatten(byte[] dst,long pos,int dstOff,int len) throws IgniteCheckedException {
  if (contains(pos)) {
    byte[] data=readFut.get();
    int srcPos=(int)(pos - this.pos);
    int cpLen=Math.min(len,data.length - srcPos);
    U.arrayCopy(data,srcPos,dst,dstOff,cpLen);
    return cpLen;
  }
  return 0;
}

public int flatten ( byte [ ] dst , long pos , int dstOff , int len ) throws IgniteCheckedException { if ( contains ( pos ) ) { byte [ ] data = readFut . get ( ) ; int srcPos = ( int ) ( pos - this . pos ) ; int cpLen = Math . min ( len , data . length - srcPos ) ; U . arrayCopy ( data , srcPos , dst , dstOff , cpLen ) ; return cpLen ; } return 0 ; }
copies cached data if specified position matches cached region .
