mirror of
https://github.com/M66B/FairEmail.git
synced 2026-03-31 06:08:31 +02:00
Classifier: cleanup msgids
This commit is contained in:
@@ -396,6 +396,31 @@ public class MessageClassifier {
|
||||
Log.i("Classifier data loaded");
|
||||
}
|
||||
|
||||
static synchronized void cleanup(@NonNull Context context) {
|
||||
try {
|
||||
load(context);
|
||||
|
||||
DB db = DB.getInstance(context);
|
||||
for (Long account : accountMsgIds.keySet()) {
|
||||
List<String> msgids = accountMsgIds.get(account);
|
||||
Log.i("Classifier cleanup account=" + account + " count=" + msgids.size());
|
||||
for (String msgid : new ArrayList<>(msgids)) {
|
||||
List<EntityMessage> messages = db.message().getMessagesByMsgId(account, msgid);
|
||||
if (messages != null && messages.size() == 0) {
|
||||
Log.i("Classifier removing msgid=" + msgid);
|
||||
msgids.remove(msgid);
|
||||
dirty = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (dirty)
|
||||
save(context);
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
}
|
||||
}
|
||||
|
||||
static synchronized void clear(@NonNull Context context) {
|
||||
wordClassFrequency.clear();
|
||||
dirty = true;
|
||||
|
||||
Reference in New Issue
Block a user