diff options
Diffstat (limited to 'java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java | 37 |
1 files changed, 5 insertions, 32 deletions
diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java index 9e6310fc2..7041df598 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java @@ -22,6 +22,7 @@ import android.util.Log; import com.android.inputmethod.annotations.UsedForTesting; import com.android.inputmethod.keyboard.ProximityInfo; +import com.android.inputmethod.latin.BinaryDictionary.LanguageModelParam; import com.android.inputmethod.latin.makedict.FormatSpec; import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; import com.android.inputmethod.latin.utils.AsyncResultHolder; @@ -327,7 +328,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { * Dynamically adds a word bigram in the dictionary. May overwrite an existing entry. */ protected void addBigramDynamically(final String word0, final String word1, - final int frequency, final boolean isValid) { + final int frequency) { if (!mIsUpdatable) { Log.w(TAG, "addBigramDynamically is called for non-updatable dictionary: " + mFilename); @@ -364,22 +365,6 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { public void onFinished(); } - public static class LanguageModelParam { - public final String mWord0; - public final String mWord1; - public final boolean mIsValid; - public final int mFrequency; - public final int mBigramFrequency; - public LanguageModelParam(final String word0, final String word1, final boolean isValid, - final int frequency, final int bigramFrequency) { - mWord0 = word0; - mWord1 = word1; - mIsValid = isValid; - mFrequency = frequency; - mBigramFrequency = bigramFrequency; - } - } - /** * Dynamically add multiple entries to the dictionary. */ @@ -396,21 +381,9 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { public void run() { final boolean locked = setProcessingLargeTaskIfNot(); try { - for (final LanguageModelParam languageModelParam : languageModelParams) { - if (languageModelParam.mWord1 == null) { - continue; - } - if (mBinaryDictionary.needsToRunGC(true /* mindsBlockByGC */)) { - mBinaryDictionary.flushWithGC(); - } - mBinaryDictionary.addUnigramWord(languageModelParam.mWord1, - languageModelParam.mFrequency); - if (languageModelParam.mWord0 != null - && !languageModelParam.mWord0.equals(languageModelParam.mWord1)) { - mBinaryDictionary.addBigramWords(languageModelParam.mWord0, - languageModelParam.mWord1, languageModelParam.mBigramFrequency); - } - } + mBinaryDictionary.addMultipleDictionaryEntries( + languageModelParams.toArray( + new LanguageModelParam[languageModelParams.size()])); } finally { if (callback != null) { callback.onFinished(); |