27 lines
767 B
Java
27 lines
767 B
Java
package org.mercury_im.messenger.persistence.repository;
|
|
|
|
import androidx.lifecycle.LiveData;
|
|
|
|
import org.jxmpp.jid.EntityBareJid;
|
|
import org.mercury_im.messenger.persistence.model.AccountModel;
|
|
import org.mercury_im.messenger.persistence.model.ChatModel;
|
|
import org.mercury_im.messenger.persistence.model.ContactModel;
|
|
import org.mercury_im.messenger.persistence.model.EntityModel;
|
|
|
|
import java.util.List;
|
|
|
|
public interface ChatRepository<E extends ChatModel> {
|
|
|
|
LiveData<List<E>> getAllChats();
|
|
|
|
LiveData<List<E>> getAllChatsOf(AccountModel account);
|
|
|
|
LiveData<E> getChatWith(AccountModel account, EntityBareJid jid);
|
|
|
|
LiveData<E> getChatWith(EntityModel identity);
|
|
|
|
LiveData<E> getChatWith(ContactModel contact);
|
|
|
|
void closeChat(E chat);
|
|
}
|