/// <exception cref="Db4objects.Db4o.Ext.Db4oIOException"></exception> private void FlushPage(CachedIoAdapter.Page page) { if (!page._dirty) { return; } IoSeek(page.StartAddress()); WritePageToDisk(page); return; }
/// <exception cref="Db4objects.Db4o.Ext.Db4oIOException"></exception> private void GetPageFromDisk(CachedIoAdapter.Page page, long pos) { long startAddress = pos - pos % _pageSize; page.StartAddress(startAddress); IoSeek(page._startAddress); int count = IoRead(page); if (count > 0) { page.EndAddress(startAddress + count); } else { page.EndAddress(startAddress); } }
private void ResetPageAddress(CachedIoAdapter.Page page, long startAddress) { page.StartAddress(startAddress); page.EndAddress(startAddress + _pageSize); }
private bool ContainsHeaderBlock(CachedIoAdapter.Page page) { return(page.StartAddress() <= FileHeader1.HeaderLength); }