Mercury-IM/core-old/src/main/java/org/mercury_im/messenger/core/di/CenterModule.java

41 lines
1.5 KiB
Java
Raw Normal View History

2019-08-03 19:05:50 +02:00
package org.mercury_im.messenger.core.di;
2019-09-23 23:55:57 +02:00
import org.mercury_im.messenger.core.NotificationManager;
2019-08-25 17:54:03 +02:00
import org.mercury_im.messenger.core.centers.ConnectionCenter;
import org.mercury_im.messenger.core.stores.EntityCapsStore;
import org.mercury_im.messenger.core.stores.PlainMessageStore;
2019-08-03 19:05:50 +02:00
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
@Module
public class CenterModule {
@Singleton
@Provides
static ConnectionCenter provideConnectionCenter(EntityCapsStore capsStore,
PlainMessageStore messageStore,
AccountRepository accountRepository,
RosterRepository rosterRepository) {
2019-08-25 17:54:03 +02:00
return new ConnectionCenter(capsStore, messageStore, accountRepository, rosterRepository);
2019-08-03 19:05:50 +02:00
}
2019-08-12 00:34:19 +02:00
@Singleton
@Provides
static EntityCapsStore providerEntityCapsStore(EntityCapsRepository entityCapsRepository) {
return new EntityCapsStore(entityCapsRepository);
2019-08-12 00:34:19 +02:00
}
2019-08-03 19:05:50 +02:00
2019-08-25 17:54:03 +02:00
@Singleton
@Provides
static PlainMessageStore provideMessageStore(RosterRepository rosterRepository,
ChatRepository chatRepository,
MessageRepository messageRepository,
NotificationManager notificationManager) {
return new PlainMessageStore(rosterRepository, chatRepository, messageRepository, notificationManager);
2019-08-25 17:54:03 +02:00
}
2019-08-03 19:05:50 +02:00
}