]> gitweb.fperrin.net Git - Dictionary.git/blobdiff - src/com/hughes/android/dictionary/engine/Dictionary.java
go
[Dictionary.git] / src / com / hughes / android / dictionary / engine / Dictionary.java
index aab0ea25acfb5e668b5f22b00a34c6f09ab4c8a3..18f1c9afa8f889a41a09d4d6ca7c4846f1fb2001 100644 (file)
@@ -20,14 +20,16 @@ public class Dictionary implements RAFSerializable<Dictionary> {
   
   // persisted
   final int dictFileVersion;
-  final String dictInfo;
-  final List<PairEntry> pairEntries;
-  final List<TextEntry> textEntries;
-  final List<EntrySource> sources;
-  final List<Index> indices;
+  final long creationMillis;
+  public final String dictInfo;
+  public final List<PairEntry> pairEntries;
+  public final List<TextEntry> textEntries;
+  public final List<EntrySource> sources;
+  public final List<Index> indices;
   
   public Dictionary(final String dictInfo) {
     this.dictFileVersion = 0;
+    this.creationMillis = System.currentTimeMillis();
     this.dictInfo = dictInfo;
     pairEntries = new ArrayList<PairEntry>();
     textEntries = new ArrayList<TextEntry>();
@@ -40,6 +42,7 @@ public class Dictionary implements RAFSerializable<Dictionary> {
     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);
@@ -54,6 +57,7 @@ public class Dictionary implements RAFSerializable<Dictionary> {
   @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);
@@ -75,6 +79,7 @@ public class Dictionary implements RAFSerializable<Dictionary> {
     public void print(final PrintStream out) {
       out.println("dictInfo=" + dictInfo);
       for (final Index index : indices) {
+        out.printf("Index: %s %s\n", index.shortName, index.longName);
         index.print(out);
         out.println();
       }