Remove text cache as it is no longer needed

This commit is contained in:
Torsten Grote
2021-01-08 11:16:16 -03:00
parent 1c107a851b
commit 766718e75c
3 changed files with 4 additions and 15 deletions

View File

@@ -117,7 +117,7 @@ class ForumViewModel extends ThreadListViewModel<ForumPostItem> {
List<ForumPostHeader> headers = List<ForumPostHeader> headers =
forumManager.getPostHeaders(txn, groupId); forumManager.getPostHeaders(txn, groupId);
logDuration(LOG, "Loading headers", start); logDuration(LOG, "Loading headers", start);
return recreateItems(txn, headers, this::buildItem); return createItems(txn, headers, this::buildItem);
}, this::setItems); }, this::setItems);
} }
@@ -154,7 +154,6 @@ class ForumViewModel extends ThreadListViewModel<ForumPostItem> {
try { try {
long start = now(); long start = now();
ForumPostHeader header = forumManager.addLocalPost(msg); ForumPostHeader header = forumManager.addLocalPost(msg);
textCache.put(msg.getMessage().getId(), text);
addItemAsync(buildItem(header, text)); addItemAsync(buildItem(header, text));
logDuration(LOG, "Storing forum post", start); logDuration(LOG, "Storing forum post", start);
} catch (DbException e) { } catch (DbException e) {

View File

@@ -144,7 +144,7 @@ class GroupViewModel extends ThreadListViewModel<GroupMessageItem> {
List<GroupMessageHeader> headers = List<GroupMessageHeader> headers =
privateGroupManager.getHeaders(txn, groupId); privateGroupManager.getHeaders(txn, groupId);
logDuration(LOG, "Loading headers", start); logDuration(LOG, "Loading headers", start);
return recreateItems(txn, headers, this::buildItem); return createItems(txn, headers, this::buildItem);
}, this::setItems); }, this::setItems);
} }
@@ -202,7 +202,6 @@ class GroupViewModel extends ThreadListViewModel<GroupMessageItem> {
long start = now(); long start = now();
GroupMessageHeader header = GroupMessageHeader header =
privateGroupManager.addLocalMessage(msg); privateGroupManager.addLocalMessage(msg);
textCache.put(msg.getMessage().getId(), text);
addItemAsync(buildItem(header, text)); addItemAsync(buildItem(header, text));
logDuration(LOG, "Storing group message", start); logDuration(LOG, "Storing group message", start);
} catch (DbException e) { } catch (DbException e) {

View File

@@ -29,8 +29,6 @@ import org.briarproject.briar.client.MessageTreeImpl;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Executor; import java.util.concurrent.Executor;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Logger; import java.util.logging.Logger;
@@ -67,8 +65,6 @@ public abstract class ThreadListViewModel<I extends ThreadItem>
@DatabaseExecutor @DatabaseExecutor
private final MessageTree<I> messageTree = new MessageTreeImpl<>(); private final MessageTree<I> messageTree = new MessageTreeImpl<>();
protected final Map<MessageId, String> textCache = // TODO still needed?
new ConcurrentHashMap<>();
private final MutableLiveData<LiveResult<List<I>>> items = private final MutableLiveData<LiveResult<List<I>>> items =
new MutableLiveData<>(); new MutableLiveData<>();
private final MutableLiveData<Boolean> groupRemoved = private final MutableLiveData<Boolean> groupRemoved =
@@ -166,18 +162,13 @@ public abstract class ThreadListViewModel<I extends ThreadItem>
} }
@DatabaseExecutor @DatabaseExecutor
protected <H extends PostHeader> List<I> recreateItems( protected <H extends PostHeader> List<I> createItems(
Transaction txn, Collection<H> headers, ItemGetter<H, I> itemGetter) Transaction txn, Collection<H> headers, ItemGetter<H, I> itemGetter)
throws DbException { throws DbException {
long start = now(); long start = now();
ThreadItemList<I> items = new ThreadItemListImpl<>(); ThreadItemList<I> items = new ThreadItemListImpl<>();
for (H header : headers) { for (H header : headers) {
MessageId id = header.getId(); String text = loadMessageText(txn, header);
String text = textCache.get(header.getId());
if (text == null) {
text = loadMessageText(txn, header);
textCache.put(id, text);
}
items.add(itemGetter.getItem(header, text)); items.add(itemGetter.getItem(header, text));
} }
logDuration(LOG, "Loading bodies and creating items", start); logDuration(LOG, "Loading bodies and creating items", start);