public ByteBuffer next() { if(nextBlock == POIFSConstants.END_OF_CHAIN) { throw new IndexOutOfBoundsException("Can't read past the end of the stream"); } try { loopDetector.claim(nextBlock); ByteBuffer data = blockStore.getBlockAt(nextBlock); nextBlock = blockStore.getNextBlock(nextBlock); return data; } catch(IOException e) { throw new RuntimeException(e); } }
private void free(ChainLoopDetector loopDetector) { int nextBlock = startBlock; while(nextBlock != POIFSConstants.END_OF_CHAIN) { int thisBlock = nextBlock; loopDetector.claim(thisBlock); nextBlock = blockStore.getNextBlock(thisBlock); blockStore.setNextBlock(thisBlock, POIFSConstants.UNUSED_BLOCK); } this.startBlock = POIFSConstants.END_OF_CHAIN; }
nextBlock = blockStore.getNextBlock(thisBlock);
public ByteBuffer next() { if(nextBlock == POIFSConstants.END_OF_CHAIN) { throw new IndexOutOfBoundsException("Can't read past the end of the stream"); } try { loopDetector.claim(nextBlock); ByteBuffer data = blockStore.getBlockAt(nextBlock); nextBlock = blockStore.getNextBlock(nextBlock); return data; } catch(IOException e) { throw new RuntimeException(e); } }
public ByteBuffer next() { if(nextBlock == POIFSConstants.END_OF_CHAIN) { throw new IndexOutOfBoundsException("Can't read past the end of the stream"); } try { loopDetector.claim(nextBlock); ByteBuffer data = blockStore.getBlockAt(nextBlock); nextBlock = blockStore.getNextBlock(nextBlock); return data; } catch(IOException e) { throw new RuntimeException(e); } }
public ByteBuffer next() { if(nextBlock == POIFSConstants.END_OF_CHAIN) { throw new IndexOutOfBoundsException("Can't read past the end of the stream"); } try { loopDetector.claim(nextBlock); ByteBuffer data = blockStore.getBlockAt(nextBlock); nextBlock = blockStore.getNextBlock(nextBlock); return data; } catch(IOException e) { throw new RuntimeException(e); } }
private void free(ChainLoopDetector loopDetector) { int nextBlock = startBlock; while(nextBlock != POIFSConstants.END_OF_CHAIN) { int thisBlock = nextBlock; loopDetector.claim(thisBlock); nextBlock = blockStore.getNextBlock(thisBlock); blockStore.setNextBlock(thisBlock, POIFSConstants.UNUSED_BLOCK); } this.startBlock = POIFSConstants.END_OF_CHAIN; }
private void free(ChainLoopDetector loopDetector) { int nextBlock = startBlock; while(nextBlock != POIFSConstants.END_OF_CHAIN) { int thisBlock = nextBlock; loopDetector.claim(thisBlock); nextBlock = blockStore.getNextBlock(thisBlock); blockStore.setNextBlock(thisBlock, POIFSConstants.UNUSED_BLOCK); } this.startBlock = POIFSConstants.END_OF_CHAIN; }
private void free(ChainLoopDetector loopDetector) { int nextBlock = startBlock; while(nextBlock != POIFSConstants.END_OF_CHAIN) { int thisBlock = nextBlock; loopDetector.claim(thisBlock); nextBlock = blockStore.getNextBlock(thisBlock); blockStore.setNextBlock(thisBlock, POIFSConstants.UNUSED_BLOCK); } this.startBlock = POIFSConstants.END_OF_CHAIN; }
nextBlock = blockStore.getNextBlock(thisBlock);
nextBlock = blockStore.getNextBlock(thisBlock);
nextBlock = blockStore.getNextBlock(thisBlock);