package com.hitherejoe.watchtower.injection.module;
import android.app.Application;
import com.hitherejoe.watchtower.data.DataManager;
import com.squareup.otto.Bus;
import javax.inject.Singleton;
import dagger.Module;
import dagger.Provides;
/**
* Provide application-level dependencies. Mainly singleton object that can be injected from
* anywhere in the app.
*/
@Module
public class ApplicationModule {
protected final Application mApplication;
public ApplicationModule(Application application) {
mApplication = application;
}
@Provides
@Singleton
Application provideApplication() {
return mApplication;
}
@Provides
@Singleton
DataManager provideDataManager() {
return new DataManager(mApplication);
}
@Provides
@Singleton
Bus provideEventBus() {
return new Bus();
}
}