private void fill() throws IOException { page = readPage(new Page(page.getNext())); pageCount++; }
@Override public void close() throws IOException { super.close(); // We need to free up the rest of the page chain.. if (current.getType() == Page.PAGE_PART_TYPE) { free(current.getNext()); } current.makePageEnd(pos, getWriteTransactionId()); // make visible as end page pageFile.addToCache(current); // Write the header.. pos = 0; current.write(this); Transaction.this.write(current, buf); } };
private Page readPage(Page page) throws IOException { // Read the page data pageFile.readPage(page.getPageId(), chunk.getData()); chunk.setOffset(0); chunk.setLength(pageFile.getPageSize()); DataByteArrayInputStream in = new DataByteArrayInputStream(chunk); page.read(in); chunk.setOffset(Page.PAGE_HEADER_SIZE); if (page.getType() == Page.PAGE_END_TYPE) { chunk.setLength((int)(page.getNext())); } if (page.getType() == Page.PAGE_FREE_TYPE) { throw new EOFException("Chunk stream does not exist, page: " + page.getPageId() + " is marked free"); } return page; }
Page next; if (current.getType() == Page.PAGE_PART_TYPE) { next = load(current.getNext(), null); } else { next = allocate();
next = load(page.getNext(), null);
private void fill() throws IOException { page = readPage(new Page(page.getNext())); pageCount++; }
private void fill() throws IOException { page = readPage(new Page(page.getNext())); pageCount++; }
private void fill() throws IOException { page = readPage(new Page(page.getNext())); pageCount++; }
@Override public void close() throws IOException { super.close(); // We need to free up the rest of the page chain.. if (current.getType() == Page.PAGE_PART_TYPE) { free(current.getNext()); } current.makePageEnd(pos, getWriteTransactionId()); // make visible as end page pageFile.addToCache(current); // Write the header.. pos = 0; current.write(this); Transaction.this.write(current, buf); } };
@Override public void close() throws IOException { super.close(); // We need to free up the rest of the page chain.. if (current.getType() == Page.PAGE_PART_TYPE) { free(current.getNext()); } current.makePageEnd(pos, getWriteTransactionId()); // make visible as end page pageFile.addToCache(current); // Write the header.. pos = 0; current.write(this); Transaction.this.write(current, buf); } };
@Override public void close() throws IOException { super.close(); // We need to free up the rest of the page chain.. if (current.getType() == Page.PAGE_PART_TYPE) { free(current.getNext()); } current.makePageEnd(pos, getWriteTransactionId()); // make visible as end page pageFile.addToCache(current); // Write the header.. pos = 0; current.write(this); Transaction.this.write(current, buf); } };
Page next; if (current.getType() == Page.PAGE_PART_TYPE) { next = load(current.getNext(), null); } else { next = allocate();
Page next; if (current.getType() == Page.PAGE_PART_TYPE) { next = load(current.getNext(), null); } else { next = allocate();
Page next; if (current.getType() == Page.PAGE_PART_TYPE) { next = load(current.getNext(), null); } else { next = allocate();
private Page readPage(Page page) throws IOException { // Read the page data pageFile.readPage(page.getPageId(), chunk.getData()); chunk.setOffset(0); chunk.setLength(pageFile.getPageSize()); DataByteArrayInputStream in = new DataByteArrayInputStream(chunk); page.read(in); chunk.setOffset(Page.PAGE_HEADER_SIZE); if (page.getType() == Page.PAGE_END_TYPE) { chunk.setLength((int)(page.getNext())); } if (page.getType() == Page.PAGE_FREE_TYPE) { throw new EOFException("Chunk stream does not exist, page: " + page.getPageId() + " is marked free"); } return page; }
private Page readPage(Page page) throws IOException { // Read the page data pageFile.readPage(page.getPageId(), chunk.getData()); chunk.setOffset(0); chunk.setLength(pageFile.getPageSize()); DataByteArrayInputStream in = new DataByteArrayInputStream(chunk); page.read(in); chunk.setOffset(Page.PAGE_HEADER_SIZE); if (page.getType() == Page.PAGE_END_TYPE) { chunk.setLength((int)(page.getNext())); } if (page.getType() == Page.PAGE_FREE_TYPE) { throw new EOFException("Chunk stream does not exist, page: " + page.getPageId() + " is marked free"); } return page; }
private Page readPage(Page page) throws IOException { // Read the page data pageFile.readPage(page.getPageId(), chunk.getData()); chunk.setOffset(0); chunk.setLength(pageFile.getPageSize()); DataByteArrayInputStream in = new DataByteArrayInputStream(chunk); page.read(in); chunk.setOffset(Page.PAGE_HEADER_SIZE); if (page.getType() == Page.PAGE_END_TYPE) { chunk.setLength((int)(page.getNext())); } if (page.getType() == Page.PAGE_FREE_TYPE) { throw new EOFException("Chunk stream does not exist, page: " + page.getPageId() + " is marked free"); } return page; }
next = load(page.getNext(), null);
next = load(page.getNext(), null);
next = load(page.getNext(), null);