/** FIXME not used yet */ private void allocateCrossDataBlock(SplitFileFetcherCrossSegmentStorage segment, Random random) { int x = 0; for(int i=0;i<10;i++) { x = random.nextInt(segments.length); SplitFileFetcherSegmentStorage seg = segments[x]; int blockNum = seg.allocateCrossDataBlock(segment, random); if(blockNum >= 0) { segment.addDataBlock(seg, blockNum); return; } } for(int i=0;i<segments.length;i++) { x++; if(x == segments.length) x = 0; SplitFileFetcherSegmentStorage seg = segments[x]; int blockNum = seg.allocateCrossDataBlock(segment, random); if(blockNum >= 0) { segment.addDataBlock(seg, blockNum); return; } } throw new IllegalStateException("Unable to allocate cross data block!"); }