30 lines
960 B
Java
30 lines
960 B
Java
package org.mercury_im.messenger.core.di.module;
|
|
|
|
import org.jivesoftware.smackx.ox.crypto.OpenPgpProvider;
|
|
import org.jivesoftware.smackx.ox.crypto.PainlessOpenPgpProvider;
|
|
import org.jivesoftware.smackx.ox.store.definition.OpenPgpStore;
|
|
import org.mercury_im.messenger.core.SchedulersFacade;
|
|
import org.mercury_im.messenger.core.data.repository.OpenPgpRepository;
|
|
import org.mercury_im.messenger.core.store.crypto.MercuryOpenPgpStore;
|
|
|
|
import javax.inject.Singleton;
|
|
|
|
import dagger.Module;
|
|
import dagger.Provides;
|
|
|
|
@Module
|
|
public class OpenPgpModule {
|
|
|
|
@Provides
|
|
@Singleton
|
|
static OpenPgpStore provideOpenPgpStore(OpenPgpRepository openPgpRepository, SchedulersFacade schedulersFacade) {
|
|
return new MercuryOpenPgpStore(openPgpRepository, schedulersFacade);
|
|
}
|
|
|
|
@Provides
|
|
@Singleton
|
|
static OpenPgpProvider provideOpenPgpProvider(OpenPgpStore openPgpStore) {
|
|
return new PainlessOpenPgpProvider(openPgpStore);
|
|
}
|
|
}
|