blob: d40ad848f8238e2398fc5c5c020429c0542644f2 [file] [log] [blame]
package org.apache.fineract.injection.module;
import android.app.Application;
import com.evernote.android.job.Job;
import com.evernote.android.job.JobManager;
import org.apache.fineract.data.datamanager.api.DataManagerCustomer;
import org.apache.fineract.data.local.database.helpers.DatabaseHelperCustomer;
import org.apache.fineract.jobs.CreationUpdationCustomerJob;
import org.apache.fineract.jobs.StartSyncJob;
import org.apache.fineract.jobs.FineractJobCreator;
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
import dagger.multibindings.IntoMap;
import dagger.multibindings.StringKey;
@Module
public class JobsModule {
@Provides
@Singleton
public JobManager provideJobManager(Application application, FineractJobCreator
fineractJobCreator) {
JobManager.create(application).addJobCreator(fineractJobCreator);
return JobManager.instance();
}
@Provides
@IntoMap
@StringKey(CreationUpdationCustomerJob.TAG)
public Job provideSyncCustomerCreationUpdationJob(DataManagerCustomer dataManagerCustomer,
DatabaseHelperCustomer databaseHelper) {
return new CreationUpdationCustomerJob(dataManagerCustomer, databaseHelper);
}
@Provides
@IntoMap
@StringKey(StartSyncJob.TAG)
public Job provideSyncCustomerJob(DataManagerCustomer dataManagerCustomer,
DatabaseHelperCustomer databaseHelper) {
return new StartSyncJob(dataManagerCustomer, databaseHelper);
}
}