1 21 package com.db4o.inside; 22 23 import com.db4o.*; 24 import com.db4o.ext.*; 25 import com.db4o.inside.freespace.*; 26 27 30 public class SystemInfoFileImpl implements SystemInfo{ 31 32 private YapFile _file; 33 34 public SystemInfoFileImpl(YapFile file){ 35 _file = file; 36 } 37 38 public int freespaceEntryCount() { 39 if(! hasFreespaceManager()){ 40 return 0; 41 } 42 return freespaceManager().entryCount(); 43 } 44 45 private boolean hasFreespaceManager() { 46 return freespaceManager() != null; 47 } 48 49 50 private FreespaceManager freespaceManager() { 51 return _file.freespaceManager(); 52 } 53 54 public long freespaceSize() { 55 if(! hasFreespaceManager()){ 56 return 0; 57 } 58 long blockSize = _file.blockSize(); 59 long blockedSize = freespaceManager().freeSize(); 60 return blockSize * blockedSize; 61 } 62 63 public long totalSize() { 64 return _file.fileLength(); 65 } 66 67 68 } 69 | Popular Tags |