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(); } }