aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/personalization/DynamicPredictionDictionaryBase.java
diff options
context:
space:
mode:
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();
+ }
}