Remove SmsMessageRecord.

This commit is contained in:
Greyson Parrelli
2022-12-18 12:01:13 -05:00
parent a84a9c5381
commit d83ef56ab1
10 changed files with 17 additions and 359 deletions

View File

@@ -13,7 +13,6 @@ import org.signal.core.util.logging.Log;
import org.thoughtcrime.securesms.conversation.ConversationMessage.ConversationMessageFactory;
import org.thoughtcrime.securesms.database.MessageTable;
import org.thoughtcrime.securesms.database.SignalDatabase;
import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.database.model.MmsMessageRecord;
import org.thoughtcrime.securesms.mms.PartAuthority;
import org.thoughtcrime.securesms.mms.TextSlide;
@@ -26,21 +25,15 @@ class LongMessageRepository {
private final static String TAG = Log.tag(LongMessageRepository.class);
private final MessageTable mmsDatabase;
private final MessageTable smsDatabase;
private final MessageTable messageTable;
LongMessageRepository() {
this.mmsDatabase = SignalDatabase.messages();
this.smsDatabase = SignalDatabase.messages();
this.messageTable = SignalDatabase.messages();
}
void getMessage(@NonNull Context context, long messageId, boolean isMms, @NonNull Callback<Optional<LongMessage>> callback) {
void getMessage(@NonNull Context context, long messageId, @NonNull Callback<Optional<LongMessage>> callback) {
SignalExecutors.BOUNDED.execute(() -> {
if (isMms) {
callback.onComplete(getMmsLongMessage(context, mmsDatabase, messageId));
} else {
callback.onComplete(getSmsLongMessage(context, smsDatabase, messageId));
}
callback.onComplete(getMmsLongMessage(context, messageTable, messageId));
});
}
@@ -61,18 +54,6 @@ class LongMessageRepository {
}
}
@WorkerThread
private Optional<LongMessage> getSmsLongMessage(@NonNull Context context, @NonNull MessageTable smsDatabase, long messageId) {
Optional<MessageRecord> record = getSmsMessage(smsDatabase, messageId);
if (record.isPresent()) {
return Optional.of(new LongMessage(ConversationMessageFactory.createWithUnresolvedData(context, record.get())));
} else {
return Optional.empty();
}
}
@WorkerThread
private Optional<MmsMessageRecord> getMmsMessage(@NonNull MessageTable mmsDatabase, long messageId) {
try (Cursor cursor = mmsDatabase.getMessageCursor(messageId)) {
@@ -80,13 +61,6 @@ class LongMessageRepository {
}
}
@WorkerThread
private Optional<MessageRecord> getSmsMessage(@NonNull MessageTable smsDatabase, long messageId) {
try (Cursor cursor = smsDatabase.getMessageCursor(messageId)) {
return Optional.ofNullable(MessageTable.smsReaderFor(cursor).getNext());
}
}
private @NonNull String readFullBody(@NonNull Context context, @NonNull Uri uri) {
try (InputStream stream = PartAuthority.getAttachmentStream(context, uri)) {
return StreamUtil.readFullyAsString(stream);

View File

@@ -21,9 +21,9 @@ class LongMessageViewModel extends ViewModel {
private LongMessageViewModel(@NonNull Application application, @NonNull LongMessageRepository repository, long messageId, boolean isMms) {
this.message = new MutableLiveData<>();
this.threadObserver = () -> repository.getMessage(application, messageId, isMms, message::postValue);
this.threadObserver = () -> repository.getMessage(application, messageId, message::postValue);
repository.getMessage(application, messageId, isMms, longMessage -> {
repository.getMessage(application, messageId, longMessage -> {
if (longMessage.isPresent()) {
ApplicationDependencies.getDatabaseObserver().registerConversationObserver(longMessage.get().getMessageRecord().getThreadId(), threadObserver);
}