X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=src%2Fcom%2Fhughes%2Fandroid%2Fdictionary%2Fengine%2FEntrySource.java;h=091138088ebfe27db0fc4b2c338597236da4d20b;hb=6d31b7b124787ac07ba682879fd47229765b6ee0;hp=80c4ebf8fe290d8b04871fa827259114e4da4e4f;hpb=c56b5d8ce1721eabc8283558acce1d00b6b358e2;p=Dictionary.git diff --git a/src/com/hughes/android/dictionary/engine/EntrySource.java b/src/com/hughes/android/dictionary/engine/EntrySource.java index 80c4ebf..0911380 100644 --- a/src/com/hughes/android/dictionary/engine/EntrySource.java +++ b/src/com/hughes/android/dictionary/engine/EntrySource.java @@ -26,10 +26,12 @@ public class EntrySource extends IndexedObject implements Serializable { private static final long serialVersionUID = -1323165134846120269L; final String name; + int numEntries; - public EntrySource(final int index, final String name) { + public EntrySource(final int index, final String name, int numEntries) { super(index); this.name = name; + this.numEntries = numEntries; } @Override @@ -38,18 +40,26 @@ public class EntrySource extends IndexedObject implements Serializable { } - public static RAFListSerializer SERIALIZER = new RAFListSerializer() { + public static final class Serializer implements RAFListSerializer { + + final Dictionary dictionary; + + Serializer(Dictionary dictionary) { + this.dictionary = dictionary; + } @Override public EntrySource read(RandomAccessFile raf, int readIndex) throws IOException { final String name = raf.readUTF(); - return new EntrySource(readIndex, name); + final int numEntries = dictionary.dictFileVersion >= 3 ? raf.readInt() : 0; + return new EntrySource(readIndex, name, numEntries); } @Override public void write(RandomAccessFile raf, EntrySource t) throws IOException { raf.writeUTF(t.name); + raf.writeInt(t.numEntries); } };