52 lines
1.5 KiB
Java
52 lines
1.5 KiB
Java
package org.mercury_im.messenger.persistence.room.repository;
|
|
|
|
import org.jxmpp.jid.EntityBareJid;
|
|
import org.mercury_im.messenger.persistence.repository.MessageRepository;
|
|
import org.mercury_im.messenger.persistence.room.dao.MessageDao;
|
|
import org.mercury_im.messenger.persistence.room.model.RoomMessageModel;
|
|
|
|
import java.util.List;
|
|
|
|
import io.reactivex.Maybe;
|
|
import io.reactivex.Observable;
|
|
import io.reactivex.Single;
|
|
|
|
public class IMessageRepository implements MessageRepository<RoomMessageModel> {
|
|
|
|
private final MessageDao messageDao;
|
|
|
|
public IMessageRepository(MessageDao messageDao) {
|
|
this.messageDao = messageDao;
|
|
}
|
|
|
|
@Override
|
|
public Maybe<RoomMessageModel> getMessage(long accountId, long chatId, long messageId) {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public Single<Long> insertMessage(RoomMessageModel message) {
|
|
return messageDao.insert(message);
|
|
}
|
|
|
|
@Override
|
|
public Observable<List<RoomMessageModel>> getAllMessagesOf(long accountId) {
|
|
return messageDao.getAllMessagesOf(accountId);
|
|
}
|
|
|
|
@Override
|
|
public Observable<List<RoomMessageModel>> getAllMessagesFrom(long accountId, EntityBareJid contact) {
|
|
return messageDao.getAllMessagesFrom(accountId, contact);
|
|
}
|
|
|
|
@Override
|
|
public Observable<List<RoomMessageModel>> getAllMessagesOfChat(long accountId, EntityBareJid peer) {
|
|
return messageDao.getAllMessagesInConversation(accountId, peer);
|
|
}
|
|
|
|
@Override
|
|
public Observable<List<RoomMessageModel>> findMessageByQuery(String query) {
|
|
return null;
|
|
}
|
|
}
|