package com.anthony.app.dagger.component; import com.anthony.app.dagger.DaggerActivity; import com.anthony.app.dagger.DaggerFragment; import com.anthony.app.dagger.module.ActivityModule; import com.anthony.app.dagger.scope.PerActivity; import com.anthony.app.module.MainListActivity; import com.anthony.app.module.banner.BannerActivity; import com.anthony.app.module.github.GithubActivity; import com.anthony.app.module.imagebrowse.ImageBrowserActivity; import com.anthony.app.module.newslist.AbsListFragment; import com.anthony.app.module.newslist.NewsListActivity; import com.anthony.app.module.newslist.NewsListFragment; import com.anthony.app.module.segment.SegmentControlActivity; import com.anthony.app.module.splash.LoadingActivity; import com.anthony.app.module.statusview.ChooseStatusActivity; import com.anthony.app.module.statusview.ShowStatusActivity; import com.anthony.app.module.tab.TabActivity; import com.anthony.app.module.videolist.NewsVideoFragment; import com.anthony.app.module.videolist.VideoListActivity; import com.anthony.app.module.weather.WeatherActivity; import com.anthony.app.module.wechatlist.WechatListActivity; import com.anthony.app.module.zhihu.ZhihuDailyListActivity; import dagger.Component; //import edu.com.app.module.news.newsList.NewsListFragment; /** * Created by Anthony on 2016/6/13. * Class Note: * depend on {@link ApplicationComponent},so with custom {@link PerActivity}Scope. * <p> * In Dagger, an unscoped component cannot depend on a scoped component. As * {@link ApplicationComponent} is a scoped component ({@code @Singleton}, we create a custom * scope to be used by all fragment/activity components. Additionally, a component with a specific scope * cannot have a sub component with the same scope. */ @PerActivity @Component(dependencies = ApplicationComponent.class, modules = ActivityModule.class) public interface ActivityComponent { //all of the project void inject(DaggerActivity daggerActivity); void inject(DaggerFragment daggerFragment); void inject(ImageBrowserActivity imageBrowserActivity); void inject(AbsListFragment absListFragment); //this project void inject(LoadingActivity loadingActivity); void inject(TabActivity tabActivity); void inject(MainListActivity mainListActivity); void inject(BannerActivity bannerActivity); void inject(WeatherActivity weatherActivity); void inject(GithubActivity githubActivity); void inject(SegmentControlActivity segmentControlActivity); void inject(VideoListActivity videoListActivity); void inject(NewsVideoFragment newsVideoFragment); void inject(NewsListFragment newsListFragment); void inject(NewsListActivity newsListActivity); void inject(ShowStatusActivity showStatusActivity); void inject(ChooseStatusActivity chooseStatusActivity); void inject(WechatListActivity wechatListActivity); void inject(ZhihuDailyListActivity zhihuDailyListActivity); }