From 4bab6244b3a7573b030c05906882ab98009c911a Mon Sep 17 00:00:00 2001 From: Paul Schaub Date: Wed, 1 Jul 2020 20:25:33 +0200 Subject: [PATCH] Small tweaks --- .../android/ui/account/AccountViewItem.java | 10 ++++++++++ .../android/ui/chat/AndroidChatViewModel.java | 16 +--------------- .../data/repository/RxMessageRepository.java | 11 ++++++----- 3 files changed, 17 insertions(+), 20 deletions(-) create mode 100644 app/src/main/java/org/mercury_im/messenger/android/ui/account/AccountViewItem.java diff --git a/app/src/main/java/org/mercury_im/messenger/android/ui/account/AccountViewItem.java b/app/src/main/java/org/mercury_im/messenger/android/ui/account/AccountViewItem.java new file mode 100644 index 0000000..af40872 --- /dev/null +++ b/app/src/main/java/org/mercury_im/messenger/android/ui/account/AccountViewItem.java @@ -0,0 +1,10 @@ +package org.mercury_im.messenger.android.ui.account; + +public class AccountViewItem { + + private boolean enabled; + private String jid; + private String status; + private String fingerprint; + +} diff --git a/app/src/main/java/org/mercury_im/messenger/android/ui/chat/AndroidChatViewModel.java b/app/src/main/java/org/mercury_im/messenger/android/ui/chat/AndroidChatViewModel.java index 6f4ef3f..2ebc778 100644 --- a/app/src/main/java/org/mercury_im/messenger/android/ui/chat/AndroidChatViewModel.java +++ b/app/src/main/java/org/mercury_im/messenger/android/ui/chat/AndroidChatViewModel.java @@ -81,7 +81,7 @@ public class AndroidChatViewModel extends ViewModel implements MercuryAndroidVie error -> LOGGER.log(Level.SEVERE, "Error subscribing display name to peer", error))); // Subscribe messages - disposable.add(((RxMessageRepository) messageRepository).observeAllMessages() + disposable.add(messageRepository.observeMessages(chat) .doOnNext(m -> LOGGER.log(Level.INFO, "NEW MESSAGES.")) .subscribe(messageList -> { @@ -118,20 +118,6 @@ public class AndroidChatViewModel extends ViewModel implements MercuryAndroidVie AndroidChatViewModel.this.messages.setValue(messages))); } - public Completable requestMamMessages() { - /* - return Completable.fromAction(() -> { - ChatModel chatModel = AndroidChatViewModel.this.chat.getValue(); - if (chatModel == null) { - return; - } - connectionCenter.requestMamMessagesFor(chatModel); - }); - - */ - return null; - } - public void deleteContact() { Peer contact = getContact().getValue(); disposable.add(messenger.deleteContact(contact) diff --git a/data/src/main/java/org/mercury_im/messenger/data/repository/RxMessageRepository.java b/data/src/main/java/org/mercury_im/messenger/data/repository/RxMessageRepository.java index 946e1c7..c1717fc 100644 --- a/data/src/main/java/org/mercury_im/messenger/data/repository/RxMessageRepository.java +++ b/data/src/main/java/org/mercury_im/messenger/data/repository/RxMessageRepository.java @@ -82,6 +82,7 @@ public class RxMessageRepository public Observable> observeMessages(DirectChat chat) { return data().select(MessageModel.class) .from(MessageModel.class) + .where(MessageModel.CHAT_ID.eq(chat.getId())) .get().observableResult() .map(ResultDelegate::toList) .map(this::messageModelsToEntities); @@ -99,6 +100,7 @@ public class RxMessageRepository public Observable> observeMessages(GroupChat chat) { return data().select(MessageModel.class) .from(MessageModel.class) + .where(MessageModel.CHAT_ID.eq(chat.getId())) .get().observableResult() .map(ResultDelegate::toList) .map(this::messageModelsToEntities); @@ -119,9 +121,8 @@ public class RxMessageRepository return data().select(MessageModel.class) .from(MessageModel.class) - .where(MessageModel.BODY.eq(body)) - .and(MessageModel.SENDER.eq(chat.getPeer().getAddress()) - .or(MessageModel.RECIPIENT.eq(chat.getPeer().getAddress()))) + .where(MessageModel.BODY.eq(body) + .and(MessageModel.CHAT_ID.eq(chat.getId()))) .get().observableResult() .map(ResultDelegate::toList) .map(this::messageModelsToEntities); @@ -132,8 +133,8 @@ public class RxMessageRepository return data().select(MessageModel.class) .from(MessageModel.class) - .where(MessageModel.BODY.eq(body)) - .and(MessageModel.SENDER.eq(chat.getRoomName())) + .where(MessageModel.BODY.eq(body) + .and(MessageModel.CHAT_ID.eq(chat.getId()))) .get().observableResult() .map(ResultDelegate::toList) .map(this::messageModelsToEntities);