aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/Suggest.java
diff options
context:
space:
mode:
authorJean Chalard <jchalard@google.com>2012-05-24 03:39:09 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-05-24 03:39:09 -0700
commit0c20714403d3548d1500cf8ac30041bedeae23d5 (patch)
treee9a972dce03a142ae82593dcd8ea54f892bd226d /java/src/com/android/inputmethod/latin/Suggest.java
parentf11c8cd15a0b24231dba886c2135833a94923793 (diff)
parent1b06b59e28743b713947947437ea5b312477f808 (diff)
downloadlatinime-0c20714403d3548d1500cf8ac30041bedeae23d5.tar.gz
latinime-0c20714403d3548d1500cf8ac30041bedeae23d5.tar.xz
latinime-0c20714403d3548d1500cf8ac30041bedeae23d5.zip
Merge "Fix a bug with a concurrent modification of a map." into jb-dev
Diffstat (limited to 'java/src/com/android/inputmethod/latin/Suggest.java')
-rw-r--r--java/src/com/android/inputmethod/latin/Suggest.java17
1 files changed, 9 insertions, 8 deletions
diff --git a/java/src/com/android/inputmethod/latin/Suggest.java b/java/src/com/android/inputmethod/latin/Suggest.java
index c98a27b64..336a76f4b 100644
--- a/java/src/com/android/inputmethod/latin/Suggest.java
+++ b/java/src/com/android/inputmethod/latin/Suggest.java
@@ -26,9 +26,9 @@ import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo;
import java.io.File;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Locale;
+import java.util.concurrent.ConcurrentHashMap;
/**
* This class loads a dictionary and provides a list of suggestions for a given sequence of
@@ -68,10 +68,10 @@ public class Suggest implements Dictionary.WordCallback {
private boolean mHasMainDictionary;
private Dictionary mContactsDict;
private WhitelistDictionary mWhiteListDictionary;
- private final HashMap<String, Dictionary> mUnigramDictionaries =
- new HashMap<String, Dictionary>();
- private final HashMap<String, Dictionary> mBigramDictionaries =
- new HashMap<String, Dictionary>();
+ private final ConcurrentHashMap<String, Dictionary> mUnigramDictionaries =
+ new ConcurrentHashMap<String, Dictionary>();
+ private final ConcurrentHashMap<String, Dictionary> mBigramDictionaries =
+ new ConcurrentHashMap<String, Dictionary>();
private int mPrefMaxSuggestions = 18;
@@ -117,8 +117,9 @@ public class Suggest implements Dictionary.WordCallback {
initWhitelistAndAutocorrectAndPool(context, locale);
}
- private static void addOrReplaceDictionary(HashMap<String, Dictionary> dictionaries, String key,
- Dictionary dict) {
+ private static void addOrReplaceDictionary(
+ final ConcurrentHashMap<String, Dictionary> dictionaries,
+ final String key, final Dictionary dict) {
final Dictionary oldDict = (dict == null)
? dictionaries.remove(key)
: dictionaries.put(key, dict);
@@ -151,7 +152,7 @@ public class Suggest implements Dictionary.WordCallback {
return mContactsDict;
}
- public HashMap<String, Dictionary> getUnigramDictionaries() {
+ public ConcurrentHashMap<String, Dictionary> getUnigramDictionaries() {
return mUnigramDictionaries;
}