package io.hefuyi.zhihudaily.injector.module; import dagger.Module; import dagger.Provides; import io.hefuyi.zhihudaily.mvp.contract.ThemeStoryContract; import io.hefuyi.zhihudaily.mvp.presenter.ThemeStoryPresenter; import io.hefuyi.zhihudaily.domain.FetchThemeBeforeStoryUsecase; import io.hefuyi.zhihudaily.domain.FetchThemeUsecase; import io.hefuyi.zhihudaily.respository.interfaces.Repository; /** * Created by hefuyi on 16/8/22. */ @Module public class ThemeStoryModule { @Provides public FetchThemeUsecase getThemeUsecase(Repository repository) { return new FetchThemeUsecase(repository); } @Provides public FetchThemeBeforeStoryUsecase getThemeBeforeStoryUsecase(Repository repository) { return new FetchThemeBeforeStoryUsecase(repository); } @Provides public ThemeStoryContract.Presenter getThemeStoryPresenter(FetchThemeUsecase themeUsecase, FetchThemeBeforeStoryUsecase themeBeforeStoryUsecase) { return new ThemeStoryPresenter(themeUsecase, themeBeforeStoryUsecase); } }