aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
diff options
context:
space:
mode:
authorSatoshi Kataoka <satok@google.com>2013-08-20 12:07:17 +0900
committerSatoshi Kataoka <satok@google.com>2013-08-20 12:28:05 +0900
commit22f01a42fcd91dae2a4e723e2477a480a11daa8e (patch)
tree0f2e78465ec234dbe6357014184fc63c57303b94 /java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
parentdadf3bf107e8a95aa0a648c67f5d84d311c3cd3b (diff)
downloadlatinime-22f01a42fcd91dae2a4e723e2477a480a11daa8e.tar.gz
latinime-22f01a42fcd91dae2a4e723e2477a480a11daa8e.tar.xz
latinime-22f01a42fcd91dae2a4e723e2477a480a11daa8e.zip
Add a functionality to clear and flush prediction dictionary
Bug: 9429906 Change-Id: I84ec444e9d46a0080dc3450b8ab32bfb99407cfe
Diffstat (limited to 'java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java')
-rw-r--r--java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java14
1 files changed, 14 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java b/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
index 916be4481..8160501a9 100644
--- a/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
+++ b/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
@@ -411,4 +411,18 @@ public abstract class DynamicPredictionDictionaryBase extends ExpandableDictiona
public void unRegisterUpdateSession(PersonalizationDictionaryUpdateSession session) {
mSessions.remove(session);
}
+
+ public void clearAndFlushDictionary() {
+ // Clear the node structure on memory
+ clearDictionary();
+ mBigramListLock.lock();
+ try {
+ // Clear the bigram list on memory
+ mBigramList.evictAll();
+ } finally {
+ mBigramListLock.unlock();
+ }
+ // Then flush the cleared state of the dictionary on disk.
+ flushPendingWrites();
+ }
}