29 lines
1.2 KiB
Java
29 lines
1.2 KiB
Java
package org.mercury_im.messenger.core.di.module;
|
|
|
|
import org.mercury_im.messenger.core.SchedulersFacade;
|
|
import org.mercury_im.messenger.core.data.repository.DirectChatRepository;
|
|
import org.mercury_im.messenger.core.data.repository.MessageRepository;
|
|
import org.mercury_im.messenger.core.data.repository.PeerRepository;
|
|
import org.mercury_im.messenger.core.store.message.MercuryMessageStore;
|
|
import org.mercury_im.messenger.core.store.message.MercuryMessageStoreFactory;
|
|
|
|
import javax.inject.Singleton;
|
|
|
|
import dagger.Module;
|
|
import dagger.Provides;
|
|
|
|
@Module
|
|
public class RxMercuryMessageStoreFactoryModule {
|
|
|
|
@Provides
|
|
@Singleton
|
|
static MercuryMessageStoreFactory provideMessageStoreFactory(PeerRepository peerRepository,
|
|
DirectChatRepository directChatRepository,
|
|
MessageRepository messageRepository,
|
|
SchedulersFacade schedulers) {
|
|
|
|
return account -> new MercuryMessageStore(account, peerRepository, directChatRepository,
|
|
messageRepository, schedulers);
|
|
}
|
|
}
|