// persisted
final int dictFileVersion;
+ final long creationMillis;
public final String dictInfo;
public final List<PairEntry> pairEntries;
public final List<TextEntry> textEntries;
public Dictionary(final String dictInfo) {
this.dictFileVersion = 0;
+ this.creationMillis = System.currentTimeMillis();
this.dictInfo = dictInfo;
pairEntries = new ArrayList<PairEntry>();
textEntries = new ArrayList<TextEntry>();
if (dictFileVersion != 0) {
throw new IOException("Invalid dictionary version: " + dictFileVersion);
}
+ creationMillis = raf.readLong();
dictInfo = raf.readUTF();
sources = CachingList.createFullyCached(RAFList.create(raf, EntrySource.SERIALIZER, raf.getFilePointer()));
pairEntries = CachingList.create(RAFList.create(raf, PairEntry.SERIALIZER, raf.getFilePointer()), CACHE_SIZE);
@Override
public void write(RandomAccessFile raf) throws IOException {
raf.writeInt(dictFileVersion);
+ raf.writeLong(creationMillis);
raf.writeUTF(dictInfo);
RAFList.write(raf, sources, EntrySource.SERIALIZER);
RAFList.write(raf, pairEntries, PairEntry.SERIALIZER);